gpt4 book ai didi

python - 快速将大型 csv 转换为 geojson

转载 作者:行者123 更新时间:2023-12-01 09:18:31 27 4
gpt4 key购买 nike

我有一个包含 6 百万行的 csv 文件,我需要将其转换为 geojson 文件。

互联网上存在云解决方案,但转换它需要一整天的时间。
有没有一种快速的方法可以用 python 做到这一点?

问题更新:

我尝试了解决方案here但我收到此错误:

ValueError                                Traceback (most recent call last)
<ipython-input-48-0224e45ed66e> in <module>()
5 with open('Documents/neo4j-community-3.3.5/import/train.csv', newline='') as csvfile:
6 reader = csv.reader(csvfile, delimiter=',')
----> 7 for pickup_latitude, pickup_longitude in reader:
8 pickup_latitude,pickup_longitude = map(float, (pickup_latitude, pickup_longitude))
9 features.append(

ValueError: too many values to unpack (expected 2)

这是我的代码:

import csv, json
from geojson import Feature, FeatureCollection, Point

features = []
with open('Documents/neo4j-community-3.3.5/import/train.csv', newline='') as csvfile:
reader = csv.reader(csvfile, delimiter=',')
for pickup_latitude, pickup_longitude in reader:
pickup_latitude,pickup_longitude = map(float, (pickup_latitude, pickup_longitude))
features.append(
Feature(
geometry = Point((pickup_longitude, pickup_latitude)),

)
)

collection = FeatureCollection(features)
with open("GeoObs.json", "w") as f:
f.write('%s' % collection)

注意:pickup_latitude 和pickup_longitude 是我的csv 中的两列

最佳答案

该错误意味着您的 csv 文件中的列数多于 for 语句期望的两列数。要解决此问题,您可以获取所有列,然后仅分析前两列:

for cols in reader:
pickup_latitude, pickup_longitude = map(float, cols[0:2])

关于python - 快速将大型 csv 转换为 geojson,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51013294/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com