python 利用pandas库实现 读写 .csv文件
生活随笔
收集整理的這篇文章主要介紹了
python 利用pandas库实现 读写 .csv文件
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
最近在處理ILSVRC12數(shù)據(jù)集,有一個(gè)需求就是將圖片路徑和標(biāo)簽寫入.csv文件中,這里我們用到了pandas庫(kù),當(dāng)然也有不用pandas庫(kù)的方法,這里不再介紹,因?yàn)閜andas處理起來是真的香啊
1.寫入CSV文件。話不多說,我們直接在上代碼,并在代碼里解釋
def create_csv_for_val(): image_path = 'G:\\ILSVRC2012\\ImageNet\\ILSVRC2012_img_val'label_path = 'G:\\ILSVRC2012\\ImageNet\\ILSVRC2012_devkit_t12\\data\\ILSVRC2012_validation_ground_truth.txt'f = open(label_path,'r')#這里定義每一列的列頭a = "path"b = "wordnet_id"image_data = os.listdir(image_path)ab_image_path = []for i in image_data: #獲取圖片絕對(duì)路徑組成的list:ab_image_pathi = os.path.join(image_path,i)ab_image_path.append(i)label_data = f.readlines() #獲取圖片label組成的list:label_data #構(gòu)建一個(gè)寫入函數(shù),參數(shù)為要寫入的內(nèi)容,即列頭和list型的數(shù)據(jù)dt = pd.DataFrame({a:ab_image_path, b:label_data})#利用to_csv函數(shù)寫入相應(yīng)文件dt.to_csv("val_csv1.csv",index = False,sep=',')最重要的就是列頭,數(shù)據(jù)(list),以及寫入函數(shù)的定義,大家可以將上面的代碼進(jìn)行改編,來生成自己的csv文件
2.讀取CSV文件
path = 'xx/xxx/xx.csv' metadata = pd.read_csv(path) metadata = metadata.sample(frac=1)for T in metadata.itertuples():print(T.a, T.b) #這里的a,b大家要自己替換為相應(yīng)的 列頭 數(shù)據(jù)?
總結(jié)
以上是生活随笔為你收集整理的python 利用pandas库实现 读写 .csv文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 记录 之 tf.data进行数据集处理常
- 下一篇: hostname, aliases, i