1. 程式人生 > 程式設計 >python中讀入二維csv格式的表格方法詳解(以元組/列表形式表示)

python中讀入二維csv格式的表格方法詳解(以元組/列表形式表示)

如何去讀取一個沒有表頭的二維csv檔案(如下圖所示)?

在這裡插入圖片描述

並以元組的形式表現資料:

((1.0,0.0,3.0,180.0),(2.0,2.0,(3.0,1.0,(4.0,(5.0,178.0))

方法一,使用python內建的資料處理庫:

#python自帶的庫
rows = open('allnodes.csv','r',encoding='utf-8').readlines()
lines = [x.rstrip() for x in rows]#去掉每行資料的/n轉義字元
lines[0] = '1,3,180'#手動去掉第一行的csv開始符號
data = []#使用列表讀取是因為列表長度是可變的,而元組不可。
[data.append(eval(i)) for i in lines]#將每一行資料以子列表的形式加入到data中
allnodes = tuple(data)#將列表型別轉化為元組,若想用二維列表的形式讀取即刪掉此行語句
print(allnodes)

out:((1,180),(2,2,(3,1,(4,(5,178),(6,(7,(8,...,(29484,-40,0))

方法二,使用pandas庫:

import pandas as pd
df = pd.read_csv('allnodes.csv',header = None)#因為沒有表頭,不把第一行作為每一列的索引
data = []
for i in df.index:
  data.append(tuple(df.values[i]))
allnodes = tuple(data)#若想用二維列表的形式讀取即刪掉此行語句
print(allnodes)
out:
((1.0,178.0),(6.0,(7.0,(8.0,(29484.0,-40.0,0.0))

小結:用python自帶的庫進行讀取的時候可能稍快,但對於大型的多維資料處理,使用pandas可進行更方面,靈活,視覺化的操作。

到此這篇關於python中讀入二維csv格式的表格方法詳解(以元組/列表形式表示)的文章就介紹到這了,更多相關python讀入二維csv檔案內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!