我有一个 numpy 二维 numpy 数组,其中包含多只股票的每日股价。例如
daily_prices = np.array([
[4,3,3,1],
[5,4,3,6],
[6,3,2,7],
[3,9,7,4],
[8,4,6,3],
[8,3,3,9]])
每行代表不同的日期,每列代表不同的股票。
我希望能够以数组(或更合适的方式)存储股票的名称(如“MSFT”、“CSCO”、“GOOG”、“F”)和日期下来。
换句话说,我想像在电子表格中那样命名行和列。
有没有 NumPythonic 的方法来做到这一点?
最佳答案
使用 structured array :
import numpy as np
daily_prices = np.array(
[
(4,3,3,1),
(5,4,3,6),
(6,3,2,7),
(3,9,7,4),
(8,4,6,3),
(8,3,3,9)],
dtype=[('MSFT','float'),('CSCO','float'),('GOOG','float'),('F','float') ]
)
这允许您访问这样的列:
print(daily_prices['MSFT'])
# [ 4. 5. 6. 3. 8. 8.]
和这样的行:
print(daily_prices[2])
# (6.0, 3.0, 2.0, 7.0)
关于python - 存储 NumPy 行和列标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5795748/