简体   繁体   English

如何将.npy文件内容加载到pandas数据框中?

[英]How to load .npy file contents into pandas dataframe?

I have data files in .npy format and I want to load it to pandas dataframe library, in order to further processing. 我有.npy格式的数据文件,我想将其加载到pandas数据框库中,以便进行进一步处理。

I tried read_csv method of pandas library, which I used in other scripts to load files. 我尝试了pandas库的read_csv方法,该方法在其他脚本中用于加载文件。

import pandas as pd
df = pd.read_csv('Frequency.npy')

Following error is thrown 引发以下错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 702, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 429, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)
  File "/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 895, in __init__
    self._make_engine(self.engine)
  File "/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 1122, in _make_engine
    self._engine = CParserWrapper(self.f, **self.options)
  File "/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 1853, in __init__
    self._reader = parsers.TextReader(src, **kwds)
  File "pandas/_libs/parsers.pyx", line 542, in pandas._libs.parsers.TextReader.__cinit__
  File "pandas/_libs/parsers.pyx", line 782, in pandas._libs.parsers.TextReader._get_header
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x93 in position 0: invalid start byte

Numpy provide a load (doc) and save (doc) method dealing wth .npy files. Numpy提供处理所有.npy文件的load (doc)save (doc)方法。 Here a basic example: 这里是一个基本的例子:

import numpy as np
import pandas as pd

df = pd.DataFrame({"col1": np.arange(10), "col2": np.random.randint(0,10,(10))})
print(df)
#    col1  col2
# 0     0     7
# 1     1     1
# 2     2     7
# 3     3     9
# 4     4     6
# 5     5     7
# 6     6     3
# 7     7     5
# 8     8     0
# 9     9     4

# Save .npy file
np.save("temp", df)

# Load .npy file
y = np.load("temp.npy")
print(y)
# [[0 7]
#  [1 1]
#  [2 7]
#  [3 9]
#  [4 6]
#  [5 7]
#  [6 3]
#  [7 5]
#  [8 0]
#  [9 4]]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM