当前位置: 首页 > news >正文

csv数据的写入

写入 CSV 文件


(一)使用`arcpy.da.InsertCursor`

`arcpy.da.InsertCursor`是用于向表格中插入数据的工具。如果你需要将处理后的数据写入 CSV 文件,可以先将数据写入一个临时表,然后将该表导出为 CSV 文件。


示例:将数据写入 CSV 文件

假设我们有一些处理后的数据,需要将其写入一个新的 CSV 文件:

```python
import arcpy# 指定输出 CSV 文件路径
output_csv = r"C:\path\to\output_data.csv"# 创建一个临时表
temp_table = r"in_memory\temp_table"
arcpy.CreateTable_management("in_memory", "temp_table")
arcpy.AddField_management(temp_table, "id", "LONG")
arcpy.AddField_management(temp_table, "name", "TEXT")
arcpy.AddField_management(temp_table, "latitude", "DOUBLE")
arcpy.AddField_management(temp_table, "longitude", "DOUBLE")# 插入数据
data = [(1, "Location A", 40.7128, -74.0060),(2, "Location B", 34.0522, -118.2437),(3, "Location C", 51.5074, -0.1278)
]with arcpy.da.InsertCursor(temp_table, ["id", "name", "latitude", "longitude"]) as cursor:for row in data:cursor.insertRow(row)# 将临时表导出为 CSV 文件
arcpy.TableToTable_conversion(temp_table, output_csv, "output_data.csv")
```

(二)直接写入 CSV 文件

如果你不需要使用 ArcPy 的地理处理功能,可以直接使用 Python 的标准库`csv`模块来写入 CSV 文件。这种方法更简单,适合处理纯文本数据。


示例:使用`csv`模块写入 CSV 文件


```python
import csv# 指定输出 CSV 文件路径
output_csv = r"C:\path\to\output_data.csv"# 数据
data = [(1, "Location A", 40.7128, -74.0060),(2, "Location B", 34.0522, -118.2437),(3, "Location C", 51.5074, -0.1278)
]# 写入 CSV 文件
with open(output_csv, mode="w", newline="", encoding="utf-8") as file:writer = csv.writer(file)writer.writerow(["id", "name", "latitude", "longitude"])  # 写入表头writer.writerows(data)  # 写入数据
```

相关文章:

  • SharpMap与TerraLib:C#与C++开源GIS库
  • 蓝桥杯算法实战分享:C/C++ 题型解析与实战技巧
  • 【“星睿O6”AI PC开发套件评测】GPU矩阵指令算力,GPU带宽和NPU算力测试
  • npm i 出现permission denied
  • AtCoder 第402场初级竞赛 A~E题解
  • JavaScript 渲染内容爬取实践:Puppeteer 进阶技巧
  • Socket
  • 【STL】unordered_map
  • 【速写】多LoRA并行衍生的一些思考
  • Nginx:前后端分离配置(静态资源+反向代理)
  • navicat导入sql文件 所有问题解决方法集合
  • ios开发中xxx.debug.dylib not found
  • day21 | 26暑期实习
  • windows server2019 内网离线安装mysql5.7方式;windows server2019安装软件提示丢失msvcp100.dll问题处理
  • char32_t、char16_t、wchar_t 用于 c++ 语言里存储 unicode 编码的字符,给出它们的具体定义
  • Linux系统编程 day9 SIGCHLD and 线程
  • uniapp开发2--uniapp中的条件编译总结
  • 【HarmonyOS】ArKUI框架
  • 基于贝叶斯优化的Transformer多输入单输出回归预测模型Bayes-Transformer【MATLAB】
  • HarmonyOS Next 编译之如何使用多目标产物不同包名应用
  • 5名中国公民在美国交通事故中遇难
  • 陈颖已任上海黄浦区委常委、统战部部长
  • 湖南新宁一矿厂排水管破裂,尾砂及积水泄漏至河流,当地回应
  • 光明日报社论:用你我的匠心,托举起繁盛的中国
  • 空调+零食助顶级赛马备战,上海环球马术冠军赛将焕新登场
  • 城市更新·简报│中央财政支持城市更新,倾斜超大特大城市