繁体   English   中英

如何从多个分隔符值中将pandas中的csv文件读取为两列

[英]How to read csv file in pandas as two column from multiple delimiter values

我有一个像这样的 csv 文件:

123, a, b, c, d
1433, b, c, d, e
2323, c, d, e, f
4543, d, e, f

我想将其读入数据帧,但我希望第一个分隔符值作为一列,其余作为另一列

id         values
123        a, b, c, d
1433       b, c, d, e
2323       c, d, e, f
4543       d, e, f, NaN

我尝试使用pandas read_csv,但在那里找不到诸如maxsplit之类的选项。 如果有人熟悉如何做到这一点,请帮助我。

我在 read_csv 函数中输入了错误的分隔符,这会强制 Pandas 将数据读入一列,然后我将列拆分为我想要的格式。 但是请注意,这并不能胜过 Datanovice 的解决方案,因为没有引入 NaN:

data = '''123, a, b, c, d
          1433, b, c, d, e
          2323, c, d, e, f
          4543, d, e, f'''

df = pd.read_csv(StringIO(data),sep=';', header= None, names=['string'])
df.string.str.split(pat=',', n=1,expand=True)

    0         1
0   123     a, b, c, d
1   1433    b, c, d, e
2   2323    c, d, e, f
3   4543    d, e, f

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM