首页 > 解决方案 > 列表中的值到新数据框

问题描述

我有我的数据作为列表说

r1=[['Pearson Chi-square ( 4.0) = ', 1021938.0], ['p-value = ', 0.0], ["Cramer's V = ", 1.0]]

我想在这个冒号“Pearson Chi-square (4.0)”中提取 4.0 并形成一个单独的列作为 DOF

我想在这个括号内提取 1021938.0

'Pearson Chi-square (4.0) = ', 1021938.0 并形成一个单独的列作为 Chisquare

['p-value = ', 0.0] 为 0.0 并形成一个名为 Pvalue 的列

["Cramer's V = ", 1.0] 为 1.0 并形成一列 Cramer's V

这样我的输出 df 将是

df

DOF  Chisquare    Pvalue   Cramers'V

4     1021938.0     0.0     1.0 

我试过这行代码

    DOF=r1[0][1]
    chisquare_stat=r1[0][0]
    p_value=r1[1][1]
    cramers_v=r1[2][1]

我需要一些帮助来单独提取单个值并将其编写为新的 df 以便于参考。

标签: pandaslistdataframe

解决方案


如果你创建一个新的 df whit

from pandas import DataFrame
new_df = pd.DataFrame(r1)
T = new_df.T # Transpost the new_df
var = df[1].values
i_want = var[0]
i_want

输出是

1021938.0

这段代码在我看来是一个丑陋的 DF,你可以用一个字典创建一个新的 df ......无论如何我认为方法df['column'].values应该解决这个问题你也可以使用转置矩阵它总是有帮助的


推荐阅读