我必须找到使用现有DataFrame创建新Dataframe的最佳方法。查看此链接以获取完整代码:jdoodle.com/a/xKP我有这种DataFrame:df = pd.DataFrame({'length': [112, 214, 52,88], 'views': [10000, 50000, 25000,5000], 'click': [55, 64, 85,9]}, index = ['id1', 'id2', 'id3','id4']) click length viewsid1 55 112 10000id2 64 214 50000id3 85 52 25000id4 9 88 5000并且需要有这个结果: type_stat statid1 click 55id2 click 64id3 click 85id4 click 9id1 length 112id2 length 214id3 length 52id4 length 88id1 views 10000id2 views 50000id3 views 25000id4 views 5000当前,我创建一个函数,该函数返回具有一个stat的DataFrame:def df_by_stat(current_df,stat): current_df['type_stat'] = stat current_df['stat'] = current_df[stat].astype(int) return current_df[['type_stat','stat']]在我.append使用这样的功能后:def final(): return df_by_stat(df,'click').append( df_by_stat(df,'length')).append( df_by_stat(df,'views'))print(final())这种方法是可行的,但其复杂性取决于行和列的基数,太昂贵了。这就是为什么我需要您的帮助才能找到最佳方法。
添加回答
举报
0/150
提交
取消