gpt4 book ai didi

python - 将 Numpy 结构化数组转换为 Pandas 数据帧

转载 作者:行者123 更新时间:2023-11-30 22:11:15 26 4
gpt4 key购买 nike

我从以下代码中获取了一个结构化的 numpy 数组:

data = np.genfromtxt(fname, dtype = None, comments = '#', skip_header=1, usecols=(ucols))

其中第一列是按打乱顺序排列的其余数据集的索引(我希望保留)。我想将结构化数组转换为 Pandas 数据帧,并使用加扰索引作为数据帧的可调用索引。

编辑:

import numpy as np

test = np.array([(45,1,'mars',1,1),(67,1,'pluto',1,1),(12,1,'saturn',1,1)],dtype='i,f,U10,i,f')

创建一个 numpy 结构化数组,调用第一个条目给出:

In [5]: test[0]
Out[5]: (45, 1., 'mars', 1, 1.)

调用整个数组:

In [6]: test
Out[6]:
array([(45, 1., 'mars', 1, 1.), (67, 1., 'pluto', 1, 1.),
(12, 1., 'saturn', 1, 1.)],
dtype=[('f0', '<i4'), ('f1', '<f4'), ('f2', '<U10'), ('f3', '<i4'), ('f4', '<f4')])

我想将这个结构化数组转换为 pandas 数据帧,然后在本例中让 45,67,12 成为可调用索引来访问数组“行”中的数据。

最佳答案

通过给定的示例,您可以让

df = pd.DataFrame(test).set_index('f0')

这样,您就可以通过 df.loc[45] 访问索引为 45 的行。

关于python - 将 Numpy 结构化数组转换为 Pandas 数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51485603/

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