[英]How to append with loop in python
I have been searching for hours.我一直在寻找几个小时。 I have 190 columns of pivot table to loop on my script I have this script:
我有 190 列 pivot 表在我的脚本上循环我有这个脚本:
corr = pg.pairwise_corr(df_pvt, columns=[[df_pvt.columns[0]], list(df_pvt.columns)], method='pearson')[['X','Y','r']]
this provide output:这提供 output:
X ... r
0 CORSEC_Mainstream Media_Negative Count ... 1.000
1 CORSEC_Mainstream Media_Negative Count ... 0.960
2 CORSEC_Mainstream Media_Negative Count ... -0.203
3 CORSEC_Mainstream Media_Negative Count ... -0.446
4 CORSEC_Mainstream Media_Negative Count ... 0.488
.. ... ... ...
179 CORSEC_Mainstream Media_Negative Count ... -0.483
180 CORSEC_Mainstream Media_Negative Count ... -0.487
181 CORSEC_Mainstream Media_Negative Count ... 0.145
182 CORSEC_Mainstream Media_Negative Count ... 0.128
183 CORSEC_Mainstream Media_Negative Count ... 0.520
[184 rows x 3 columns]
I want to append 189 other columns to my script, but this script keep providing 2 appended variables and keep replacing until the 189th variables我想将 append 189 其他列添加到我的脚本中,但是此脚本继续提供 2 个附加变量并一直替换到第 189 个变量
for var in list(range(1,189)):
corr_all = corr.append(pg.pairwise_corr(df_pvt, columns=[[df_pvt.columns[var]], list(df_pvt.columns)], method='pearson')[['X','Y','r']])
print(corr_all)
Any advice?有什么建议吗?
Edit:编辑:
Its work like this:它的工作是这样的:
corr = pg.pairwise_corr(df_pvt, columns=[[df_pvt.columns[0]], list(df_pvt.columns)], method='pearson')[['X','Y','r']]
corr_1 = corr.append(pg.pairwise_corr(df_pvt, columns=[[df_pvt.columns[1]], list(df_pvt.columns)], method='pearson')[['X','Y','r']])
corr_2 = corr_1.append(pg.pairwise_corr(df_pvt, columns=[[df_pvt.columns[2]], list(df_pvt.columns)], method='pearson')[['X','Y','r']])
But how I loop it until the corr_189?但是我如何循环它直到 corr_189?
You can try making 189 lists of values (Pearson coefficients) for each of your 189 columns, and then concatenate the columns with " df_final " which would be the dataframe containing all the 190 columns:您可以尝试为 189 列中的每一列制作 189 个值列表(皮尔逊系数),然后将这些列与“df_final”连接起来,这将是包含所有 190 列的 dataframe:
corr = pd.DataFrame(corr)
df_final = pd.DataFrame()
for k in range(189):
list_Pearson_k = 'formula to compute a list of pearson values'
df_list_k = pd.DataFrame(list_Pearson_k)
df_final = pd.concat([corr,df_list_k ], axis = 1)
Python list
append
method returns None
. Python
list
append
方法返回None
。
Change your code to this:-将您的代码更改为:-
corr_all = []
for var in range(1,189):
corr_all.append(pg.pairwise_corr(df_pvt, columns=[[df_pvt.columns[var]], list(df_pvt.columns)], method='pearson')[['X','Y','r']])
print(corr_all)
This should help.这应该会有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.