0

我正在尝试做一些简单的事情,但由于某种原因我做不到。我一直在网站上寻找相关的答案,但我一直无法完成。

所以,我正在尝试将文本文件、csv 或 rtf 导入到 np.array,到目前为止我已经得到了

example.cvs 是一个文件

881.00,882.00
883.00,884.00

>>> import numpy as np
>>> txtdata = np.genfromtxt('example.cvs',usecols=0, dtype='S51',delimiter=',') 

>>> txtdata
array(['{\\rtf1\\ansi\\ansicpg1252\\cocoartf1265\\cocoasubrtf190',
       '{\\fonttbl\\f0\\fswiss\\fcharset0 Helvetica;}',
       '{\\colortbl;\\red255\\green255\\blue255;}',
       '\\margl1440\\margr1440\\vieww10800\\viewh8400\\viewkind0',
       '\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx39',
       '\\f0\\fs24 \\cf0  881.00', '883.00'], 
      dtype='|S51')

我不知道为什么会有这些东西,我只想要一个包含这 4 个数字的数组。一个 2x2 矩阵。

谢谢

4

1 回答 1

2

显然,您正在阅读 RTF 文件,而不是纯文本文件。另外,你的usecolsdtype参数是错误的。

使用您展示的 CSV 文件,您可以执行以下操作:

>>> np.genfromtxt('example.csv', delimiter=',')
array([[ 881.,  882.],
       [ 883.,  884.]])
于 2014-05-11T21:24:05.590 回答