我试图解析多个CSV文件并从这些文件中收集摘要信息,然后将摘要信息输出为CSV或Excel格式。
到目前为止,我能找出的最好方法是创建一个新的数据框,然后将每个变量添加到值设置为0的数据框中。我的问题是某些摘要信息具有3个输出,因此对于只有1个输出将附加2个零。有没有更优雅的方法可以尝试对此进行编码?
df = pd.read_csv(all_csv_files[0])
df_final = pd.DataFrame({'num_of_mkt':[0,0,0],
'num_of_submkt':[0,0,0],
'year_max':[0,0,0],
'nra_minmax':[0,0,0],
})
##Find number of unique markets
df_final.update({'num_of_mkt':[df.msa_id.nunique()]})
##Find the number of submarkets
if hasattr(df, 'submkt_id'):
df_final.update({'num_of_submkt':[df.submkt_id.nunique()]})
else:
df_final.update({'num_of_submkt':['None']})
##Find the most recent year
df_final.update({'year_max':[df.year.max()]})
##Find max min values
df_final.update({'nra_minmax':[df.nra.min(),df.nra.max()]})
当我print(df_final)
确实获得所需的数据时,但我想知道是否有一种更优雅或更整洁的编码方式,并且这是否也是将此类信息输出为CSV的唯一方法/ Excel格式。
num_of_mkt num_of_submkt year_max nra_minmax compltns \
0 64.0 None 2019.2 52.0 0.0
1 0.0 0 0.0 1399608.0 22514.0
2 0.0 0 0.0 0.0 0.0
absorption_minmax vacrate cnt_bld pct_net_grs_sp
0 -27226.0 Clear Clear Clear
1 22300.0 0 0 0
2 0.0 0 0 0