numpy 细分数据行

ekqde3dh  于 2023-01-09  发布在  其他
关注(0)|答案(1)|浏览(144)

我有两列数据

5   8.2
15  7.4
18  3.2
25  9.1

我想将每行的值细分为2,这样数据将

2.5  4.1
2.5  4.1
7.5  3.7
7.5  3.7
9.0  1.6
9.0  1.6
12.5 4.55
12.5 4.55

然后我想细分每行的值由10,我想写相同的文件。我尝试了下面的代码,但它没有做同样的事情,我期望。希望Maven可以帮助我。谢谢。

import numpy as np
data=np.loadtxt('two_column.txt') 
data=data/2
data=data/10
np.savetxt('output.txt',data)
xqkwcwgp

xqkwcwgp1#

使用DataFrame,您可以按N复制repeatdivide的行:

N = 2

out = df.loc[df.index.repeat(N)].div(N) # or .div(10*N) if wanted

输出:

0     1
0   2.5  4.10
0   2.5  4.10
1   7.5  3.70
1   7.5  3.70
2   9.0  1.60
2   9.0  1.60
3  12.5  4.55
3  12.5  4.55

使用numpy时:

out = np.repeat(df.to_numpy(), N, axis=0)/N

# or with an array A as input
out = np.repeat(A, N, axis=0)/N

输出:

array([[ 2.5 ,  4.1 ],
       [ 2.5 ,  4.1 ],
       [ 7.5 ,  3.7 ],
       [ 7.5 ,  3.7 ],
       [ 9.  ,  1.6 ],
       [ 9.  ,  1.6 ],
       [12.5 ,  4.55],
       [12.5 ,  4.55]])

相关问题