gpt4 book ai didi

python - 如何使用Python删除csv文件中只有一项的行?

转载 作者:太空宇宙 更新时间:2023-11-03 16:26:30 24 4
gpt4 key购买 nike

我试图找到这个问题的答案,但没有成功。这是我面临的问题 -

我有一个 csv 文件,其中某些行包含三个元素(表明它们已满),而其他一些行中只有一个元素(表明它们未满,因此应被丢弃)。这是一个例子:

Time, Voltage, Charge
A, B, C
D, E, F
G, H, I
J,
K,
L,

如上所述,我需要从 csv 文件中删除 J、KL。到目前为止,我已经尝试过这种方法(在另一个堆栈溢出线程 here 中找到):

if any(val not in (None,"") for val in row):
battlog_voltage.append(float(row[1])/1000.0)

1是空字段开始的地方,如 J、K、L 旁边所示。但是,我收到以下错误:

  File "/home/raghavk/Documents/batterylog.py", line 81, in <module>
mydata = mylog.loadCycleData('battery-2.csv')

File "/home/raghavk/Documents/batterylog.py", line 68, in loadCycleData
battlog_voltage.append(float(row[1])/1000.0)

IndexError: list index out of range

我该如何解决这个问题?

最佳答案

csv.reader 对象为每一行创建一个新的列表,并且不会填充它们。只需测试行长度:

if len(row) > 1:

您链接到的问题使用 csv.DictReader(),它预先给出字段名称,导致 None'' 空字符串值。

关于python - 如何使用Python删除csv文件中只有一项的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37936954/

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