python pandas讀寫excel/csv文件 .read_excel .to_excel .read_csv .to_csv

參考:read_excel;to_excel;read_csv;to_csv

讀取excel/csv數據 - read_excel

import pandas as pd
pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None, squeeze=False, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, keep_default_na=True, verbose=False, parse_dates=False, date_parser=None, thousands=None, comment=None, skip_footer=0, skipfooter=0, convert_float=True, mangle_dupe_cols=True, **kwds)
說明:

  • io : 文件路徑及名稱。str, ExcelFile file://localhost/path/to/table.xlsx.
  • sheet_name : 指定excel中的哪個sheet。str, int, list, or None, default 0
    默認為0,將第一個sheet返回為一個dataFrame,
    如果設定為1: 將第二個sheet返回為一個dataFrame,
    如果設定為"Sheet1": 將名字為“Sheet1”的sheet返回為一個dataFrame,
    如果設定為[0, 1, "Sheet5"]: 返回一個字典,字典的value分別為這三個sheet的DataFrame,
    如果設定為None: 返回所有sheet的dataframe組成的字典,
  • header :指定作為列名的行,默認0,即取第一行,數據為列名行以下的數據;若數據不含列名,則設定 header = None。 int, list of int, default 0;
  • names:指定列的名字,傳入一個list數據,若數據不含列名,則應設定 header = None;
  • index_col :指定某一列數據作為索引列,用于顯示行名;
  • skiprows:省略指定行數的數據.
  • dtype : Type name or dict of column.指定讀取時轉換來的變量類型,本人在讀取染色體外顯子exon時指定為str,否則讀出來是小數,當然不存在第'3.0','4.0'外顯子啦,str,int, type, default None
要讀取的test.xlsx的Sheet1內容
要讀取的test.xlsx的Sheet2內容
代碼實例:
>>> pd1 = pd.read_excel('test.xlsx',sheet_name = 'Sheet2',index_col=0,skiprows= 2,header = None)
>>> pd1
         1  2   3           4     5
0                                  
T3  nameT3  男  47  鄭州中心醫院(胸外)    血液
T4  nameT4  男  48  鄭州中心醫院(胸外)  石蠟切片
T5  nameT5  女  49        蘇博醫學    血液
T6  nameT6  男  50        蘇博醫學    血液
>>> pd2 = pd.read_excel('test.xlsx',skipfooter=3)
>>> pd2
  樣本編號      姓名 性別  年齡     送檢醫院  樣本類型
0   F1  nameF1  女  56      NaN    血液
1   F2  nameF2  女  70      NaN    血液
2   F3  nameF3  男  71      NaN    血液
3   F4  nameF4  男  53      NaN    蠟塊
4   F5  nameF5  女  55  邯鄲市第一醫院  石蠟切片
5   F6  nameF6  男  67     蘇博醫學    血液

pd.read_csv(filepath_or_buffer: Union[str, pathlib.Path, IO[~AnyStr]], sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, skipfooter=0, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, cache_dates=True, iterator=False, chunksize=None, compression='infer', thousands=None, decimal=b'.', lineterminator=None, quotechar='"', quoting=0, doublequote=True, escapechar=None, comment=None, encoding=None, dialect=None, error_bad_lines=True, warn_bad_lines=True, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None)

存儲excel/csv數據 - to_excel

import pandas as pd
pd.to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None, inf_rep='inf', verbose=True, freeze_panes=None)
說明:

  • excel_writer : 輸出路徑或者ExcelWriter對象。str or ExcelWriter object
    如果excel_writer為輸出路徑則只會將dataframe寫入第一個sheet,如果要在一個excel中寫入多個sheet,則需要將輸出文件轉化為ExcelWriter對象。
writer = pd.ExcelWriter('out.xlsx')
df1.to_excel(writer, sheet_name='sheet1')
df2.to_excel(writer, sheet_name='sheet2')
writer.save()
  • sheet_name : sheet表名命名,str, default ‘Sheet1’,Name of sheet which will contain DataFrame;
  • na_rep: 缺失值填充,str, default '',如果na_rep設置為bool值,則讀取excel時改為0和1,True對應1,False對應0;也可以寫入字符串或數字;
  • float_format : str, optional, 例如 float_format="%.2f" will format 0.1234 to 0.12;
  • columns : 可選部分列輸出,sequence or list of str, optional;
  • header :指定作為列名的行,默認True,即取第一行,如果是list則重命名列明。bool or list of str, default True;
  • index : 是否顯示行索引(名字),bool, default True,Write row names (index).

pd.to_csv(self, path_or_buf=None, sep=', ', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, mode='w', encoding=None, compression='infer', quoting=None, quotechar='"', line_terminator=None, chunksize=None, date_format=None, doublequote=True, escapechar=None, decimal='.')

代碼實例:
>>> writer = pd.ExcelWriter('out.xlsx')
>>> pd1.to_excel(writer, sheet_name='pd1',index = False)
>>> pd2.to_excel(writer, sheet_name='pd2', na_rep = '/', columns=['樣本編號','姓名','送檢醫院','樣本類型'])
>>> writer.save()
輸出文件:
輸出的out.xlsx的pd1的內容
輸出的out.xlsx的pd2的內容
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,572評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,071評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,409評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,569評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,360評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,895評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,979評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,123評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,643評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,559評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,742評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,250評論 5 356
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,981評論 3 346
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,363評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,622評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,354評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,707評論 2 370

推薦閱讀更多精彩內容

  • 他說:等我一年,我重新追你回來,回頭已是人夫 他說:我一直如此愛你,這么多年,然而敵不過更愛自己,隔空喊話多容易 ...
    風一樣的陽光橙閱讀 115評論 0 0
  • 舊物 幾次搬家,幾個舊包袱是母親必帶之物,這些舊包袱占據了新衣柜大部分空間,包裹的都是些久之不穿的破舊衣物,打我記...
    獨釣寒江Mr閱讀 1,378評論 11 62
  • 以后你的世界沒有我了 再見了 好先生
    十三_閱讀 196評論 0 0
  • 年前的工作很順利的結束了,拎著行囊踏上歸程,看九萬里高空之上的陽光有些刺眼,窗外的云層層疊,想到這些年,在內蒙的東...
    四喜沒丸子閱讀 185評論 0 2
  • 時光如梭,轉眼豆豆到我們這個小家庭已經1年零9個月了,它也從毛躁冒失的小朋友長成了英俊聰明的小伙子啦!依稀...
    永不放棄的蝸牛閱讀 204評論 0 1