python - python将额外的列添加到现有的csv并用空值填充列
问题描述
我有这个 CSV:
一个 | 乙 |
---|---|
1 | 3 |
2 | 4 |
我想添加 2 个新标题,并为每个现有行添加一个新列的空值:
“列 1” | col2 | 新1 | 新 2 |
---|---|---|---|
“时间戳” | “不适用” | ||
“不适用” | “字符串元素” | ||
2 | “细绳” |
平面 CSV 以逗号分隔:
"column1",col2
"timestamp","N/A"
"N/A","string element"
2,"string"
我试过了,但它删除了所有双引号和“N/A”值
import pandas as pd
df = pd.read_csv(fileName)
df["New1"] = ""
outcsv=fileName
df.to_csv(outcsv, index=False)
输出是:
column1,col2,New1
timestamp,
,string element
2,string
但我需要这个输出:
"column1",col2,New1,New2
"timestamp","N/A",,
"N/A","string element",,
2,"string",,
解决方案
此代码提供所需的输出。
keep_default_na 保留 N/A。quoting = csv.QUOTE_NONE 保留引号。
import pandas as pd
import csv as csv
fileName = "a.txt"
df = pd.read_csv(fileName,keep_default_na=False, quoting=csv.QUOTE_NONE)
df["New1"] = ""
df["New2"] = ""
outcsv = fileName
df.to_csv(outcsv, index=False,quoting=csv.QUOTE_NONE)
推荐阅读
- python - 从 zip 的 SpooledTemporaryFile 获取信息
- scala - 在scala中检索属性值
- react-native - 搜索结果 Web 结果命令失败:gradlew.bat installDebug
- python - Python:双端队列超出索引,为什么?
- python-3.x - 我如何将函数中的参数提及到 af 字符串中?
- android - 在 android 应用程序中使用 fstatat64 系统调用
- python - 使用函数时将浮点数转换为 int 不起作用
- java - 使用 Android Websocket 监听 URL
- php - 是否可以将变量作为 POST 变量的参数传递?语法是什么?
- redirect - Nuxt i18n 从页面名称重定向到特定区域设置