Python 熊猫按多列分组,并通过迭代复制行
我有一个熊猫阵列,看起来像下图。我想做以下几点:Python 熊猫按多列分组,并通过迭代复制行,python,pandas,duplicates,conditional,rows,Python,Pandas,Duplicates,Conditional,Rows,我有一个熊猫阵列,看起来像下图。我想做以下几点: # Create four copies of the dataframe Yr2_df = df1 Yr3_df = df1 Yr4_df = df1 Yr5_df = df1 # Merge the 5 dataframe into one combined dataframe df = pd.concat([df1, Yr2_df, Yr3_df, Yr4_df, Yr5_df],axis=0).sort_index().reset_in
# Create four copies of the dataframe
Yr2_df = df1
Yr3_df = df1
Yr4_df = df1
Yr5_df = df1
# Merge the 5 dataframe into one combined dataframe
df = pd.concat([df1, Yr2_df, Yr3_df, Yr4_df, Yr5_df],axis=0).sort_index().reset_index(drop=True)
# Create four copies of the dataframe
Yr2_df = df1
Yr3_df = df1
Yr4_df = df1
Yr5_df = df1
# Merge the 5 dataframe into one combined dataframe
df = pd.concat([df1, Yr2_df, Yr3_df, Yr4_df, Yr5_df],axis=0).sort_index().reset_index(drop=True)
但是,这并未提供日期范围(每行应具有不同的年份:2017年、2016年等)。有什么建议吗
我就是这样添加日期范围的。挑战是在年份列表中循环,因为这比行列表要短
# Define list of years
years = [Year_Minus_1, Year_Minus_2, Year_Minus_3, Year_Minus_4, Year_Minus_5]
# Define index for iteration
index = df.index
# Import library for advanced iteration
import itertools
# Iterate over index and list of years so that we have one row per year for each ticker
for i, y in zip(index, itertools.cycle(years)):
df.iloc[i, df.columns.get_loc('Year')] = y