Pandas技巧:将一列分隔成多个列

项目中遇到一个问题,搜集的数据只有一列,每行的数据都是通过特殊字符分隔,现在需要将其分隔成多个列。
原始数据如下:

			0
0	155,NA,0,10,-99999,18,18,18,04,NA,0,-99999...
1	728,NA,24.1,74.81,-9999,18,18,18,-99999,...

这是前两行的数据。原本使用特殊字符分隔的,这个好处理,只需通过string的replace方法替换成‘,’逗号即可。
下面就是要将这些一列的数据,再通过逗号’,'分隔成多个列。
方法如下:

df = df[0].str.split(',',expand=True) 

注意上述代码中的0是列的名字,这里由于原始数据没有列名,所以pandas默认列名为0。如果原始数据是有列名的,则将0替换成‘列名’即可。
分隔后的数据如下:

	0	1	2	3	4	5	6	7	8	9	...	90	91	92	93	94	95	96	97	98	99
0	155	NA	0	0	-99999	18	18	18	04	NA	...	-99999	-99999	-99999	-99999	NA	NA	NA	NA	NA	4
1	728	NA	24.1	74.81	-99999	18	18	18	-99999	NA	...	01	-99999			NA	NA	NA	NA	NA	6

可以看到分隔后的dataFrame变为了100列。

猜你喜欢

转载自blog.csdn.net/opp003/article/details/83443779
今日推荐