簡體   English   中英

如何將不同類型的數據從文件導入Python Numpy數組?

[英]How do I import data with different types from file into a Python Numpy array?

假設我有一個文件myfile.txt包含:

1   2.0000  buckle_my_shoe
3   4.0000  margery_door

如何將數據從文件導入numpy數組作為int,float和string?

我的目標是:

array([[1,2.0000,"buckle_my_shoe"],
[3,4.0000,"margery_door"]])

我一直玩弄以下無濟於事:

a = numpy.loadtxt('myfile.txt',dtype=(numpy.int_,numpy.float_,numpy.string_))

編輯:另一種方法可能是使用ndarray類型並轉換后。

b = numpy.loadtxt('myfile.txt',dtype=numpy.ndarray)

    array([['1', '2.0000', 'buckle_my_shoe'],
       ['3', '4.0000', 'margery_door']], dtype=object)

使用numpy.genfromtxt

import numpy as np
np.genfromtxt('filename', dtype= None)
# array([(1, 2.0, 'buckle_my_shoe'), (3, 4.0, 'margery_door')], 
#       dtype=[('f0', '<i4'), ('f1', '<f8'), ('f2', '|S14')])

熊貓可以為你做到這一點。 您可以使用的函數的文檔在這里

假設你的列是制表符分隔的,這應該可以解決問題 (改編自這個問題 ):

df = DataFrame.from_csv('myfile.txt', sep='\t')
array = df.values # the array you are interested in

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM