Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python numpy,recarray:转换dict';是去np.recarray吗?_Python_Numpy_Dictionary_Recarray - Fatal编程技术网

Python numpy,recarray:转换dict';是去np.recarray吗?

Python numpy,recarray:转换dict';是去np.recarray吗?,python,numpy,dictionary,recarray,Python,Numpy,Dictionary,Recarray,有哪些方法可以将松散耦合的词典列表转换为np.recarray(其中将numpy导入为np) 我环顾了一下这里,但也就是说,看到了一些数据结构已经很好的东西 我在这里原型化了一个简单的方法: 谢谢大家! @DSM在我准备完整答案时击败了我。但是是的,它已经存在了。只需使用Pandas(作为pd导入)将其转换为DataFrame,然后将其转换为recarray In [8]: print pd.DataFrame(raw) age extra has_money

有哪些方法可以将松散耦合的词典列表转换为
np.recarray
(其中
将numpy导入为np

我环顾了一下这里,但也就是说,看到了一些数据结构已经很好的东西

我在这里原型化了一个简单的方法:


谢谢大家!

@DSM在我准备完整答案时击败了我。但是是的,它已经存在了。只需使用
Pandas
(作为
pd
导入)将其转换为
DataFrame
,然后将其转换为
recarray

In [8]:

print pd.DataFrame(raw)
   age             extra has_money   name
0   45               NaN      True  Billy
1   32  Something wicked     False  Tommy
2   31               NaN      True     Al
In [9]:

pd.DataFrame(raw).to_records()
Out[9]:
rec.array([(0, 45, nan, True, 'Billy'),
       (1, 32, 'Something wicked', False, 'Tommy'),
       (2, 31, nan, True, 'Al')], 
      dtype=[('index', '<i8'), ('age', '<i8'), ('extra', 'O'), ('has_money', '?'), ('name', 'O')])
[8]中的

打印pd.数据帧(原始)
额外年龄有你的名字吗
0.45南真比利
1 32一些邪恶的假汤米
2 31南真艾尔
在[9]中:
pd.DataFrame(原始).to_记录()
出[9]:
rec.array([(0,45,nan,True,'Billy'),
(1,32,“邪恶的东西”,假的,“汤米”),
(2,31,nan,True,'Al'),

根据我的经验,当人们使用
recarray
时,他们通常最好使用
DataFrames
;你可以简单地编写
df=pd.DataFrames(raw)
,然后你可以使用
df.to_records()
获得等效的recarray。(
pandas
使用
NaN
表示使用
None
时缺少的值,但是
.fillna()
可以更改。)