在 python 的数据框中拆分 space 分隔值的列
split column of space-separated values in dataframe in python
我的数据框有两列,有几个值,除以 space:
first_column second_column
Arkhangelsk P BP - 2.4 3.0 4.8 22.2
Koryazhma N - - 1.5 0.5 5.0 5.8
我需要将表格分成8列:
0 1 2 3 4 5 6 7
Arkhangelsk P BP - 2.4 3.0 4.8 22.2
Koryazhma N - - 1.5 0.5 5.0 5.8
我该如何解决这个问题?
您是从 csv 导入这些数据吗?因为您似乎可以在 pd.read_csv.
的参数部分使用 sep = " "
尝试:
d1 = df['first_column'].str.split(' ', expand=True)
d2 = df['second_column'].str.split(' ', expand=True)
d2.columns = d1.columns + d1.shape[1]
res = pd.concat([d1,d2],axis=1)
结果:
0
1
2
3
4
5
6
7
0
Arkhangelsk
P
BP
-
2.4
3.0
4.8
22.2
1
Koryazhma
N
-
-
1.5
0.5
5.0
5.8
我的数据框有两列,有几个值,除以 space:
first_column second_column
Arkhangelsk P BP - 2.4 3.0 4.8 22.2
Koryazhma N - - 1.5 0.5 5.0 5.8
我需要将表格分成8列:
0 1 2 3 4 5 6 7
Arkhangelsk P BP - 2.4 3.0 4.8 22.2
Koryazhma N - - 1.5 0.5 5.0 5.8
我该如何解决这个问题?
您是从 csv 导入这些数据吗?因为您似乎可以在 pd.read_csv.
的参数部分使用 sep = " "尝试:
d1 = df['first_column'].str.split(' ', expand=True)
d2 = df['second_column'].str.split(' ', expand=True)
d2.columns = d1.columns + d1.shape[1]
res = pd.concat([d1,d2],axis=1)
结果:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | |
---|---|---|---|---|---|---|---|---|
0 | Arkhangelsk | P | BP | - | 2.4 | 3.0 | 4.8 | 22.2 |
1 | Koryazhma | N | - | - | 1.5 | 0.5 | 5.0 | 5.8 |