数据帧一列分成三列,求大师帮忙,谢谢
import pandas as pddata = [["2345", "A", "2022-12-20", "2.1016", "-0.72,2.8, -0.77"],
["004243", "C", "2022-12-15", "2.0891", ", 45,-0.77"],
["519212", "B", "2022-12-10", "333", "1.9733, -0.77, -3.29"],
["162411", "E", "2022-12-9", "0.7071", "-1.64,25, -1.46"],
["007844", "FC", "2022-11-19", "0.6967", '8, 88,-1.46'],
["163208", "G", "2022-11-10", "1.0440", "-0.40, ,-0.40"]]
columns = ["编号", "名称", "日期", "AA", "BCD"]
df = pd.DataFrame(data, columns=columns)
print(df)
想把BCD列,根据逗号分成三列,即增加B,C,D列,求大虾帮忙,谢谢
您好!您可以使用pandas的`str.split()`方法将BCD列根据逗号分成三列。下面是一个示例:
import pandas as pd
data = [["2345", "A", "2022-12-20", "2.1016", "-0.72,2.8, -0.77"],
["004243", "C", "2022-12-15", "2.0891", ", 45,-0.77"],
["519212", "B", "2022-12-10", "333", "1.9733, -0.77, -3.29"],
["162411", "E", "2022-12-9", "0.7071", "-1.64,25, -1.46"],
["007844", "FC", "2022-11-19", "0.6967", '8, 88,-1.46'],
["163208", "G", "2022-11-10", "1.0440", "-0.40, ,-0.40"]]
columns = ["编号", "名称", "日期", "AA", "BCD"]
df = pd.DataFrame(data, columns=columns)
# 将BCD列根据逗号分割成三列,并赋予新的列名B, C, D
df[['B', 'C', 'D']] = df['BCD'].str.split(',', expand=True)
# 删除原始的BCD列
df = df.drop(columns=['BCD'])
print(df)
输出的DataFrame将会如下所示:
编号名称 日期 AA B C D
0 2345 A2022-12-202.1016-0.72 2.8-0.77
1004243 C2022-12-152.0891 45-0.77
2519212 B2022-12-10 3331.9733-0.77-3.29
3162411 E2022-12-9 0.7071-1.64 25-1.46
4007844FC2022-11-190.6967 8 88-1.46
5163208 G2022-11-101.0440-0.40 -0.40
现在,BCD列已经被分成了B、C和D三列。
页:
[1]