将一列切分为多列

问题:

没有列名,那么pandas读入时默认按照第一行的格式,前面都是两列,而后面出现了三列,四列,五列数据就会报错。而你直接读入时指定数据列就可以避免这个问题了 其实你还可以把分隔符改成不是,的其他,比如sep='\t',那么就把每行的所有的数据读入一个单元格,后期使用正则化以逗号分割

解决:

0是列的名字,这里由于原始数据没有列名,所以pandas默认列名为0。如果原始数据是有列名的,则将0替换成‘列名’即可。

df = pd.read_csv('12.csv', encoding='utf-8', sep='\t', header=None)
df3 = df[0].str.split(',', expand=True)
print(df3.to_string())
df3.to_csv("x2.csv", index=False)

 

posted @ 2023-01-31 17:13  半日闲1  阅读(156)  评论(0编辑  收藏  举报