我正在用Python做一个线性回归,我的学校作业,我想把我的7x12二维数组合并成一个一维列表,这是我原来的数组。
y = df["fatalProb"].values.reshape(7,12)
print(y)
[[0.3725 0.4336 0.537 0.392 0.233 0.2892 0.2721 0.2392 0.2281 0.2689
0.2898 0.2825]
[0.3112 0.3936 0.3874 0.2793 0.2416 0.275 0.2802 0.2587 0.2583 0.258
0.2906 0.2927]
[0.3486 0.3278 0.3836 0.3041 0.2477 0.2734 0.276 0.2903 0.2531 0.2659
0.2928 0.2896]
[0.3044 0.4032 0.3665 0.3275 0.2939 0.2882 0.3089 0.2949 0.2547 0.2699
0.2973 0.2869]
[0.3488 0.3651 0.4307 0.3361 0.2833 0.3035 0.3051 0.2898 0.2695 0.271
0.2787 0.3034]
[0.3559 0.3357 0.4075 0.3428 0.2834 0.3156 0.2952 0.2992 0.2795 0.2806
0.2905 0.267 ]
[0.3965 0.3814 0.4735 0.3813 0.3089 0.3105 0.3282 0.3047 0.2834 0.2974
0.2737 0.2986]]
我希望我的y
是一个长度为12的列表,它是一个包含所有添加值的列表,并且每个列表都有一个相同的索引。
例如:[[a,b,c], [d,e,f], [g,h,i]]
至[a+d+g, b+e+h, c+f+i]
我考虑过使用列表解析,但我不太乐意使用:
y = [y[0][j] + y[1][j] + y[2][j] + y[3][j] + y[4][j] + y[5][j] + y[6][j] for j in range(len(y[0]))]
4条答案
按热度按时间7tofc5zh1#
下面是你对清单的理解:
结果:
7gyucuyw2#
你的
y
是从一个 Dataframe 中派生出来的,它是2d的;一个简单的例子:使用
sum
方法,可以垂直或水平添加值:91zkwejq3#
根据您的示例"[[a,b,c],[d,e,f],[g,h,i]]至[a + d + g,b + e + h,c + f + i]"检查以下代码
输出:
ryevplcw4#
在获得
y
之后,您需要做的就是y = y.sum(axis=0).tolist()
它会将你的(7,12)形矩阵沿着列求和,并给予你一个形状为(1,12)的数组,该数组可以转换为一个列表。@hpaulj给出了详细的解释。