gpt4 book ai didi

Python:将函数应用于数组的每一列

转载 作者:行者123 更新时间:2023-11-28 21:48:39 24 4
gpt4 key购买 nike

我需要对 numpy 数组的每一列应用一个函数。我不能对数组的每个元素都这样做,但它必须是每一列,因为每一列组合在一起代表一个信息。

import numpy as np
C = np.random.normal(0, 1, (500, 30))

这是最有效的方法吗(为了说明我正在使用 np.sum):

C2 = [ np.sum( C[ :, i ] )  for i in range( 0, 30) ]

数组 C 是 500x4000,我也在对每一列应用一个耗时的函数。

最佳答案

你可以试试np.apply_along_axis :

In [21]: A = np.array([[1,2,3],[4,5,6]])

In [22]: A
Out[22]:
array([[1, 2, 3],
[4, 5, 6]])

In [23]: np.apply_along_axis(np.sum, 0, A)
Out[23]: array([5, 7, 9])

In [24]: np.apply_along_axis(np.sum, 1, A)
Out[24]: array([ 6, 15])

关于Python:将函数应用于数组的每一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34932395/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com