我有一个这样的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



  我尝试使用熊猫read_csv,但找不到这样的选项
  作为那里的最大分裂。如果有人熟悉如何做的话对我有帮助
  出来。

最佳答案

我在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

关于python - 如何从多个定界符值中将 Pandas 中的csv文件读取为两列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60125855/

10-09 22:15