我正在尝试创建一个名为['FirstYearSales']的新列,该列将使用['CohortYear']列中的值,并查找相应的列标签并在行中提供相应的值。有谁知道如何做到这一点?
data = [[2017, 150, 200, 300], [2018, 0, 750, 650], [2019, 0, 0, 50]]
data = pd.DataFrame(data, columns = ['CohortYear', '2017', '2018', '2019'])
CohortYear 2017 2018 2019
0 2017 150 200 300
1 2018 0 750 650
2 2019 0 0 50
所需的结果如下所示:
CohortYear FirstYearSales 2017 2018 2019
0 2017 150 150 200 300
1 2018 750 0 750 650
2 2019 50 0 0 50
我的失败尝试之一:
data['FirstYearSales'] = data.loc[list(data.columns.values)] == ['CohortYear']
data['FirstYearSales'] = data.apply(lambda x: x[str(x.CohortYear)], axis=1)
CohortYear 2017 2018 2019 FirstYearSales
0 2017 150 200 300 150
1 2018 0 750 650 750
2 2019 0 0 50 50
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句