问题描述
我有一个数据框
2019Q4 2020Q4
0 20 10
1 56 15
2 63 14
根据我要创建的数据框
2019Q4 2020Q4 year2019 year2020
0 20 10 20 10
1 56 15 56 15
2 63 14 63 14
请帮助我如何在python中实现
解决方法
将带有$("form[target=Charts]").on("submit",function(event) {
event.preventDefault();
var baseSrc = $(this).attr('action');
var queryArgs = $(this).serialize();
$('iframe[name=Charts]').each(function() {
$(this).attr('src',baseSrc + '?' + queryArgs);
});
});
的lambda函数用于前4个值,在DataFrame.add_prefix
之前添加前缀,然后在DataFrame.join
上添加前缀:
rename
如果可能的话,同一年有多列:
df = df.join(df.rename(columns=lambda x: x[:4]).add_prefix('year'))
print (df)
2019Q4 2020Q4 year2019 year2020
0 20 10 20 10
1 56 15 56 15
2 63 14 63 14
如果选择一列,则获取所有列,因为重复:
print (df)
2019Q4 2020Q4 2020Q3
0 20 10 3
1 56 15 5
2 63 14 15
df1 = df.join(df.rename(columns=lambda x: x[:4]).add_prefix('year'))
print (df1)
2019Q4 2020Q4 2020Q3 year2019 year2020 year2020
0 20 10 3 20 10 3
1 56 15 5 56 15 5
2 63 14 15 63 14 15
可能的解决方案是汇总的,例如由print (df1['year2020'])
year2020 year2020
0 10 3
1 15 5
2 14 15
:
sum
,
如果您不熟悉熊猫,还可以使用以下代码:
df1['year2019']=df1['2019Q4']
df1['year2020']=df1['2020Q4']