[英]Create a new column to data frame from existing columns using Pandas
我不确定如何在这里构建数据框,但我正在寻找一种方法来从多列中获取数据并将它们组合成一列。 不是作为一个总和,而是作为一个联合价值。
Ex. MB|Val|34567|W123 -> MB|Val|34567|W123|MB_Val_34567_W123.
到目前为止,我尝试的是创建一个条件变量,该变量调用与其中的值相同的特定列
conditions = [(Groupings_df['GroupingCriteria1'] == 'MB')]
然后是一个值变量,它将在新列中包含我想要的内容
values = ['MB_Val_34567_W123']
最后对它进行分组
Groupings_df['GroupingColumn'] = np.select(conditions,values)
这适用于 1 行,但在具有数千行的 df 上继续手动更改 values 变量 (34567) 中的数字是低效的
IIUC,您想创建一个新列作为每一行的串联:
df = pd.DataFrame({'A': ['MB'], 'B': ['Val'], 'C': [34567], 'D': ['W123']})
df['E'] = df.astype(str).apply(lambda x: '_'.join(x), axis=1)
print(df)
# Output
A B C D E
0 MB Val 34567 W123 MB_Val_34567_W123
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.