gpt4 book ai didi

python - Pandas 拉错列

转载 作者:行者123 更新时间:2023-11-28 22:15:10 25 4
gpt4 key购买 nike

我有一个结构如下的 csv:

_________________________
|foo | bar | | |
| |need |bleep|bloop|
| |this |bleep|bloop|

我试图从“bar”列中提取值,但我得到的只是“bloop”。

这是我试图拉动“需求”的方式:

df = pd.read_csv('PATH\TO\FILE')
value = df.iloc[1]['bar']
print(value)

>bloop

我不明白为什么我只是得到“bloop”而不是“need”。我也尝试过使用:

df.iloc[:,1]

获取第二列,但什么也没做。

编辑:这是前几行 csv 的格式,由于敏感信息而不得不更改。

foo,bar
,need,bleep,bloop
,need,"some stuff, and, more, other, blah stuff, stuff",bloop
,need,"pretty, much, the, same stuff",bloop

最佳答案

问题是标题行没有足够的字段。因此,pandas 假定前两列是一个索引,并为您提供两列 foobar,这允许它正确解析文件并避免此类错误:

df = pd.read_csv('test.csv', header=None)

ParserError: Error tokenizing data. C error: Expected 2 fields in line 2, saw 4

由于有时更改基础数据很痛苦,因此只需跳过第一行并手动设置列名即可。

df = pd.read_csv('test.csv', skiprows=1)
df.columns=['foo', 'bar', 0, 1]

输出:

   foo   bar                                                0       1
0 NaN need some stuff, and, more, other, blah stuff, stuff bloop
1 NaN need pretty, much, the, same stuff bloop

关于python - Pandas 拉错列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52955538/

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