将字符串连接到Pandas中的系列?

2024-04-27 09:46:24 发布

您现在位置:Python中文网/ 问答频道 /正文

一段我认为可以用的代码没有用。只有当另一列表示“X”时,我才想将“X”添加到标记中。然而,我不能只说df['Tag With X' = df['Tag'] + "X",我认为我可以:

MaterialsReport_df['Scoring Site Including X'] = np.where(MaterialsTracking_df['# BOXES'] == "X",
                                                          MaterialsTracking_df['Scoring Site DBN'] + "X",
                                                          MaterialsTracking_df['Scoring Site DBN'])

这就产生了elementwise comparison failed; returning scalar instead...result = method(y)的错误

当我在末尾添加一个.astype(str)时,我知道这是有效的。我只是不明白为什么

特别是当我检查列和转换为字符串的列的类型时,Python说它们仍然是<class 'pandas.core.series.Series'>


Tags: 代码标记dftagwithnpsitewhere
1条回答
网友
1楼 · 发布于 2024-04-27 09:46:24

您是否尝试过:

   df = MaterialsReport_df
   df['Scoring Site Including X'] = df.apply(lambda x: x['Scoring Site DBN'] + 'X' if x['# BOXES'] == 'X' else x['Scoring Site DBN'], axis=1)

如果“Scoring Site DBN”的每个元素都是一个字符串,则应该可以使用

相关问题 更多 >