繁体   English   中英

在 Python 中,如何根据另一列更改 dataframe 的一列?

[英]In Python, how do I change one column of a dataframe based on another?

在具有xy列的 dataframe 中,我将如何编写代码以便如果一行有一个x字符串但一个“未分配” y字符串( y列包含字符串“未分配”),那么y字符串将是和x字符串一样吗?
(用列x的内容覆盖列y中的“未分配”字符串)

您可以在迭代时使用df.iterrows()有条件地检查列的值。

import pandas as pd

df = pd.DataFrame(data={'x': [1,2,3], 'y': [6, "Not Assigned", 8]})

for index, value in df.iterrows():
  if value['y'] == 'Not Assigned':
    df['y'][index] = df['x'][index]

Output:


    x   y
0   1   6
1   2   2
2   3   8
df.loc[df['y']=='Not assigned', 'y'] = df.loc[df['y']=='Not assigned', 'x']

会做的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM