iT邦幫忙

1

讀入data 到 array的方法 (初學者發問)

  • 分享至 

  • xImage

請問大家有沒有簡單的方法可以將data檔讀入numpy的2D array中:

data檔是這樣:

1 : 100 200 300
2 : 101 201 301
...

檔案中有不要的 ":" .需要拿掉,我試了以下方法是可以的,不知道還有沒有其他簡潔的方法:

import numpy as np
import pandas as pd

df = pd.read_csv(filename, header=None, sep="\s+")
data=df.to_numpy(copy=True)
data2=np.delete(data,1,1)

這樣好像就可以得到純數字的2D array.

data2=[[1 100 200 300]
[2 101 200 300]
...
[ ]]

請問有其他簡單一點的寫法嗎?

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

3
ccutmis
iT邦高手 2 級 ‧ 2019-10-28 09:31:35
最佳解答

test.csv

1 : 100 200 300
2 : 101 201 301
3 : 100 200 300
4 : 101 201 301
5 : 100 200 300
6 : 101 201 301

test.py

import numpy
data = numpy.genfromtxt('test.csv',usecols=(0,2,3,4))
print(data)

謝謝,我的code不理想,您的答案才是正解,厲害

ccutmis iT邦高手 2 級 ‧ 2019-10-28 09:48:11 檢舉

不客氣~ 只要能解決問題的就是好答案^^"

1
mackuo
iT邦研究生 1 級 ‧ 2019-10-28 15:20:41

小弟獻醜一下:

import pandas as pd
location = ('test.csv')
df = pd.read_csv(location, header = None)
df = df[0].str.replace(':', "")
df

https://ithelp.ithome.com.tw/upload/images/20191028/20122335jjyAEgjtJN.png

謝謝您的答案,比起我的code,也是很好的方法.

mackuo iT邦研究生 1 級 ‧ 2019-10-28 21:36:38 檢舉

不客氣,小弟也是初學,一起加油!!

我要發表回答

立即登入回答