首页 > 解决方案 > 如何在 python 中使用 split 和 join 从现有列创建新列?

问题描述

我有一个数据,

df=

ID  Grade_Levels
1     2|3|4
2     1|2
3     5|6|7
4     8|9|10

我想创建一个列“Grade”,其中包含来自“Grade_Levels”的信息,

ID  Grade_Levels       Grade
1     2|3|4     Grade 2 Grade 3 Grade 4 
2     1|2       Grade 1 Grade 2 
3     5|6|7     Grade 5 Grade 6 Grade 7
4     8|9|10    Grade 8 Grade 9 Grade 10

如何在 python 中为 pandas 数据框执行此操作?请帮忙。

标签: pythonpandas

解决方案


您可以使用以下apply方法:

def split_and_join(row):
    grade_levels = row['Grade_Levels']
    return ' '.join(['Grade %s' % g for g in grade_levels.split('|')])

df['Grade'] = df.apply(split_and_join, axis=1)

推荐阅读