开发者社区> 问答> 正文

这取决于您要推动什么。将对象和数组作为指向原始对象的指针进行推送。内置的原始类型(如数字或布尔值)将

鉴于此CSV文件:

"A","B","C","D","E","F","timestamp" 611.88243,9089.5601,5133.0,864.07514,1715.37476,765.22777,1.291111964948E12 611.88243,9089.5601,5133.0,864.07514,1715.37476,765.22777,1.291113113366E12 611.88243,9089.5601,5133.0,864.07514,1715.37476,765.22777,1.291120650486E12 我只是想将其加载为3行7列的矩阵/ ndarray。但是,由于某种原因,我能从numpy中脱颖而出的是一个具有3行(每行一个)且没有列的ndarray。

r = np.genfromtxt(fname,delimiter=',',dtype=None, names=True) print r print r.shape

[ (611.88243, 9089.5601000000006, 5133.0, 864.07514000000003, 1715.3747599999999, 765.22776999999996, 1291111964948.0) (611.88243, 9089.5601000000006, 5133.0, 864.07514000000003, 1715.3747599999999, 765.22776999999996, 1291113113366.0) (611.88243, 9089.5601000000006, 5133.0, 864.07514000000003, 1715.3747599999999, 765.22776999999996, 1291120650486.0)] (3,) 我可以手动迭代并将其修改为所需的形状,但这似乎很愚蠢。我只想将其加载为适当的矩阵,以便可以像在matlab中一样将其切成不同的维度并绘制出来。 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-08 22:02:55 418 0
1 条回答
写回答
取消 提交回答
  • numpy.loadtxt(open("test.csv", "rb"), delimiter=",", skiprows=1) 查看loadtxt文档。

    您还可以使用python的csv模块:

    import csv import numpy reader = csv.reader(open("test.csv", "rb"), delimiter=",") x = list(reader) result = numpy.array(x).astype("float") 您将不得不将其转换为您喜欢的数字类型。我想您可以将全部内容写成一行:

    结果= numpy.array(list(csv.reader(open(“ test.csv”,“ rb”),delimiter =“,”))))。astype(“ float”) 新增提示:

    您还可以使用pandas.io.parsers.read_csv并获取关联的numpy数组,该数组可以更快。

    2020-02-08 22:05:39
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
用计算和数据去改变整个世界 立即下载
重新定义计算的边界 立即下载
低代码开发师(初级)实战教程 立即下载