【发布时间】:2020-01-20 05:20:27
【问题描述】:
这是我编写的代码,它创建了 3 个变量的增量,用于 p 值计算,其中三个变量是 loc 值或指标或任何数字含义:
i = 0
k = 2
j = 2
result = []
df = pd.DataFrame()
while j < data.shape[1]:
tstat, data_stat = ttest_ind_from_stats(data.loc[i][k], data.loc[i + 1][k], data.loc[i + 2][k], data.loc[i][j],
data.loc[i + 1][j], data.loc[i + 2][j])
result.append([data_stat])
j+=1
if j == 8:
j = 2
i = i + 3
if i == data.shape[0]:
k = k + 1
i = 0
if k > 7:
break
data_result = pd.DataFrame(result)
data.shape[0] = 150 和 data.shape[1] = 8 的位置。
此代码创建正确的 p 值,但作为 1800 行 x 1 列数据框。但是,我想打破生成的 df 以便代码生成六个不同的数据帧,每个数据帧都有data.shape[1]-2 列数(所以 6 列)。通过一些示例截图:
1) 我当前代码中的data_result 数据框:
1
0.658
0.1067
0.777
0.459
0.3307
1
0.622
0.4178
0.3158
0.7674
0.7426
2) 我想要什么:
col1 col2 col3 col4 col5 col6
1 0.658 0.1067 0.777 0.459 0.3307
1 0.622 0.4178 0.3158 0.7674 0.7426
代码中应该有六个上述数据帧。
3) 我最好在每个数据框的左侧添加一列,用于插入每一行的占位符值(截图省略)。这一步是可选的。
所以基本上,我将生成的数据帧除以每 6 行,将它们从单列转置为六列,然后重复接下来的六个值,依此类推。我想可能会创建一个系列或一个新的 df 直到 j = 8 然后逐行附加到整个 df,但不确定这是否可行或可能。谢谢!
编辑)
所以基本上,我想创建六个单独的数据框,每个数据框都有 50 行 x 6 列的形状。我当前的数据框有 1800 行 x 1 列。
【问题讨论】:
-
如果您将数据(输入和输出)添加为文本而不是图片,您可能会获得更快的响应。
-
感谢您的推荐。编辑了帖子