我应该使用什么工具根据多个条件在数据框中创建新列

问题描述 投票:0回答:1

我在数据框中有列(Column1),其中包含有关工作中心的信息以及我需要在空列(Column2)中分配这些工作中心名称的值,例如:

输入:

第1栏: 第2栏:
WC1 NaN
123 NaN
456 NaN
789 NaN
abc NaN
fgh NaN
WC2 NaN
123 NaN
abc NaN
123 NaN

输出:

第1栏: 第2栏:
WC1 厕所1
123 WC1
456 WC1
789 WC1
abc WC1
fgh WC1
WC2 厕所2
123 WC2
abc WC2
123 WC2

我尝试了很多东西并阅读了著名的DON'Thttps://stackoverflow.com/a/55557758但仍然不明白我应该使用什么,因为我希望循环逐一遍历每一行来分配WC1仅分配给最高值,当循环找到WC2时,它将停止将WC1分配给值

python pandas dataframe loops if-statement
1个回答
0
投票

用途:

df['Column2'] = df['Column1'].where(df['Column1'].str.contains('WC')).ffill()
print (df)
  Column1 Column2
0     WC1     WC1
1     123     WC1
2     456     WC1
3     789     WC1
4     abc     WC1
5     fgh     WC1
6     WC2     WC2
7     123     WC2
8     abc     WC2
9     123     WC2
© www.soinside.com 2019 - 2024. All rights reserved.