我试图将csv文件中的数据转换为矩阵,这是我使用的代码:
import pandas as pd
df = pd.read_csv('test.csv', usecols=[0,1,2], names=['A', 'B', 'C'])
pd.pivot_table(df, index='A', columns='B', values='C')
输入如下:
^{pr2}$结果是:
1 2 3 4 5
1 1.0 2.0 3.2 2.3 1.3
2 2.2 5 3.2 1.1 .
3 . . . . .
但是,这个pandas pivot表似乎只适用于较小的csv文件,如果我将其应用于较大的csv文件,则会出现内存错误。不确定是不是Jupyter出了问题,但错误代码如下:
MemoryError Traceback (most recent call last)
<ipython-input-12-46167ab8fec6> in <module>()
1 import pandas as pd
----> 2 df = pd.read_csv('largercsv.csv', usecols=[0,1,2], names=['A', 'B', 'C'], skiprows=25)
3 pd.pivot_table(df, index='A', columns='B', values='C')
643 skip_blank_lines=skip_blank_lines)
644
--> 645 return _read(filepath_or_buffer, kwds)
646
647 parser_f.__name__ = name
398 return parser
399
--> 400 data = parser.read()
401 parser.close()
402 return data
937
--> 938 ret = self._engine.read(nrows)
939
940 if self.options.get('as_recarray'):
1505 def read(self, nrows=None):
1506 try:
-> 1507 data = self._reader.read(nrows)
1508 except StopIteration:
1509 if self._first_chunk:
pandas\parser.pyx in pandas.parser.TextReader.read (pandas\parser.c:10364)()
pandas\parser.pyx in pandas.parser.TextReader._read_low_memory (pandas\parser.c:11065)()
pandas\parser.pyx in pandas.parser._concatenate_chunks (pandas\parser.c:27499)()
MemoryError:
可能是我的电脑速度,但不太确定该怎么做。 另外,我四处查看,但无法将输出转换为excel电子表格。有办法解决这些问题吗?在
提前谢谢!在
目前没有回答
相关问题 更多 >
编程相关推荐