我有一个df:
col1
0 01139290201001
1 01139290101001
2 01139290201002
3 01139290101002
4 01139290201003
5 01139290101003
6 01139290201004
7 01139310101001
8 01139290201005
9 01139290301001
...
5908 01139ÅÊ21020
5909 01139ÅÊ21013
5910 01139ÅÊ11008
5911 01139ÅÊ21011
5912 01139ÅÊ03003
在int唯一的情况下,我需要将前7个数字提取到新列中;在包含字符的情况下,我需要将前5和8,9个数字提取到新列中。
我将这段代码尝试到一个组成的数据帧上,尝试解决该问题的方法,它可以工作,但是当我在实际数据集上尝试它时,它并没有按预期工作,主要原因是我的实际数据中df有整数,并且对他们。
df['col2']=df[col1][0:5]+df['col1'][8]
0 0113929020100101139290201005
1 0113929010100101139290201005
2 0113929020100201139290201005
3 0113929010100201139290201005
4 0113929020100301139290201005
5 NaN
6 NaN
7 NaN
8 NaN
9 NaN
还为什么会导致NaN值?
我希望它看起来像这样:
01139290201001 to 0113929 for integer only rows and like this for the others
01139ÅÊ03003 to 0113903
Cats萌萌
相关分类