1. 程式人生 > >pandas之csv操作

pandas之csv操作

逗號分隔值(Comma-Separated Values,CSV,有時也稱為字元分隔值,因為分隔字元也可以不是逗號),其檔案以純文字形式儲存你表格資料(數字和文字)。文字意味著該檔案是一個字元序列,不含必須像二進位制數字那樣被解讀的資料。CSV檔案由任意數目的記錄組成,記錄間以某種換行符分隔;每條記錄由欄位組成,欄位間的分隔符是其他字元或字串,最常見的是逗號或製表符。通常搜尋記錄都有完全相同的欄位序列。通常都是純文字檔案。

# -*- coding:utf-8 -*-
import pandas as pd

VIDEO_INFO_PATH = '/home/rjzz/dataset/video/MSVD/MSR Video Description Corpus.csv'

# Series & DataFrame是Pandas中最常用的兩個物件
# Series

if __name__ == '__main__':
    video_info = pd.read_csv(VIDEO_INFO_PATH)

    # shape 可以得到行數和列數
    print(video_info.shape)

    # index儲存行索引,columns儲存列索引
    print(video_info.columns)
    print(video_info.columns.name)

    # 行索引是一個表示多級索引的MultiIndex物件,每級的索引名可以通過names屬性存取
    print(video_info.index)
    print(video_info.index.names)

    # DataFrame物件有兩個軸,第0軸為縱軸,第一軸為橫軸
    # []運算子可以通過索引標籤獲取指定的列,當下標是單個標籤時,所得到的是Series物件
    # 而當下標是列表時,則得到一個DataFrame物件
    video_id = video_info['VideoID']
    video_object = video_info[['VideoID', 'Start', 'End']]

    # 進行去重操作
    video_object = video_object.drop_duplicates()
    print(video_object)
    print(video_object.values)
    # video_test = video_info[video_info['VideoID'].unique()]

    # .loc[]可通過索引標籤獲取指定的行,或指定行的某個元素
    # 因為這裡沒有行索引,所以這裡報錯video_one = video_info.loc['mv89psg6zh4']

    s = pd.Series([1, 2, 3, 4, 5], index=["a", "b", "c", "d", "e"])
    print(u" index", s.index)
    print(u" values", s.values)
    print(s[1:3])
    print(s['b':'d'])

作者:RJzz
連結:https://www.jianshu.com/p/64bbf5f684ee
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。

作者:RJzz 連結:https://www.jianshu.com/p/64bbf5f684ee 來源:簡書 簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。