我正在尝试将一些代码从MATLAB转换为Python。有没有Python等价于MATLAB的datset数组?http://www.mathworks.com/help/stats/dataset-arrays.html
c9qzyr3d1#
如果你想对数据集进行数值运算,numpy是个不错的选择,你可以通过组合基本的numpy dtypes来指定任意的记录类型,并通过字段名来访问记录,类似于Python内置的字典访问。
numpy
dtypes
import numpy myDtype = numpy.dtype([('name', numpy.str_), ('age', numpy.int32), ('score', numpy.float64)]) myData = numpy.empty(10, dtype=myDtype) # Create empty data sets print myData['age'] # prints all ages
您甚至可以使用numpy中的tofile和'fromfile'函数保存和重新加载这些数据,并继续使用命名字段:
tofile
with open('myfile.txt', 'wb') as f: numpy.ndarray.tofile(myData, f) with open('myfile.txt', 'rb') as f: loadedData = numpy.fromfile(f, dtype=myDtype) print loadedData['age']
s8vozzvw2#
您应该查看pandas库,它是根据R的 Dataframe 建模的。更不用说这比MATLAB的数据集要好得多
kxe2p93d3#
Python字典可以包含字符串键、数字键甚至其他字典键,如下所示:
>>> d = {"name":"foo", "age":22, "props": {"value":2.1}} >>> d['props']['value'] 2.1
我假设这是什么你正在寻找港口超过基于此报价从您链接到的网站:Statistics Toolbox™具有数据集数组,用于存储具有异构数据类型的变量。例如,可以将数值数据、逻辑数据、字符串单元格数组和分类数组组合在一个数据集数组变量中。
zsbz8rwp4#
看看Numpy,它是第三方库,主要用于Python的科学计算,还有一个面向Matlab用户的Numpy页面。我认为你在寻找Numpy.array。
4条答案
按热度按时间c9qzyr3d1#
如果你想对数据集进行数值运算,
numpy
是个不错的选择,你可以通过组合基本的numpydtypes
来指定任意的记录类型,并通过字段名来访问记录,类似于Python内置的字典访问。您甚至可以使用numpy中的
tofile
和'fromfile'函数保存和重新加载这些数据,并继续使用命名字段:s8vozzvw2#
您应该查看pandas库,它是根据R的 Dataframe 建模的。
更不用说这比MATLAB的数据集要好得多
kxe2p93d3#
Python字典可以包含字符串键、数字键甚至其他字典键,如下所示:
我假设这是什么你正在寻找港口超过基于此报价从您链接到的网站:
Statistics Toolbox™具有数据集数组,用于存储具有异构数据类型的变量。例如,可以将数值数据、逻辑数据、字符串单元格数组和分类数组组合在一个数据集数组变量中。
zsbz8rwp4#
看看Numpy,它是第三方库,主要用于Python的科学计算,还有一个面向Matlab用户的Numpy页面。
我认为你在寻找Numpy.array。