pandas庫隨筆——Cheat Sheet與資料讀取
由於自己是從R轉Python,平時用慣了R對資料進行處理、轉化等操作,如今過渡到Python上還有些許的不適應。但還是不得不感嘆pandas
的強大之處,一個庫頂的上R中數個包合併在一起使用。
因為平時的使用比較雜,都是隨用隨查,所以在pandas
庫的使用上也是比較零碎,這裡記錄下分析一份資料,使用比較多的一些pandas
的操作。
Cheat Sheet
首先貼上下新手寫碼必備的cheatsheet:
資料讀取
資料讀取這部分非常不同於R,個人感覺非常便捷,並且使用起來也很順手。讀取csv
所使用的函式: read_csv
, 其讀取速度遠遠快過R中自帶的函式 read.csv
data.table
包中 fread
有的一拼(雖然 fread
可能還是稍微快一點點),但pandas還有read_excel
這個函式可以直接讀取 xls
與 xlsx
等型別的檔案,這比R還需要呼叫一些包來讀取快捷多了。
具體的一些操作如下,首先我們需要先將pandas
庫進行匯入,通常操作都是as pd
import pandas as pd
然後我們就可以進行csv
檔案的讀取了!
1、read_csv
df = pd.read_csv('myfile.csv')
這是最簡單的讀取方式,但是遇到很多奇奇怪怪的檔案格式,就要修改其中的引數了。
1)encoding
編碼問題,是MacOS、Lunix、Windows幾個系統之間相互轉化檔案最容易出現的問題。通常,我們使用的編碼是:utf-8
,這樣的編碼在MacOS與Lunix系統中,通常是沒有問題的,但是讀取Windows中的檔案一定要注意!,通常需要使用 encoding = 'mbcs'
才能正常讀取檔案,Windows很多都是ANSI編碼。
另外這裡再說個關於轉碼的小技巧(當然可以使用Python,用 encoding = 'mbcs'
進行讀取,用 encoding = 'utf-8'
進行儲存)。這裡對我們的檔案(csv
,txt
等)用記事本開啟,然後點選另存為,在下方有一個編碼:使用 UTF-8
ANSI
,總之是你目標的編碼即可。
2)sep
預設我們的csv
檔案使用的是逗號分隔的,如果原本的資料不是csv格式,是用其它字元分隔的(例如空格),那我可以使用 sep =
其它分隔符號來進行修改。
3)header
另一個常用的引數是header =
,函式預設是將檔案的第一行作為每一列的列名,如果我們需要取消這個操作,也就是檔案的第一行我們不令它變成列名,則需使用header = None
。另外有個小技巧,就是原本我們的檔案每一列有多個標題,我們可以設定一個list,比如:header = [0, 2]
,那麼就表示將檔案中的這些行作為列標題,在中間的行將被忽略掉(本例中資料第1,3行將被作為多級標題出現,第2行資料將被丟棄,真正的資料從第4行開始)。
4)names
那如果我們需要自己來定義列名,就需要使用類似names = ['身高', '體重']
的操作,同時注意需要使用header=None
5)index_col
有時候,我們也希望檔案中的第一列內容,不做為index,而是重新使用0~(n-1)來作為新的index,可以使用 index_col = False
。但是使用時需要注意,這樣做,會頂掉最後一列資料!使得讀取進來直接少了一列資料。 解決的方法是:我們還是使用 read_csv
正常讀取,然後對讀取進來的 df
,使用df = df.reset_index()
,可以直接使0~(n-1)作為我們的index,也就是行名。
2、read_excel
df = pd.read_excel('myfile.xlsx', 'Sheet1')
read_excel
的引數與前面的 read_csv
基本一致,就是要使用第二個引數,來指定讀取的Sheet(通常預設都是'Sheet1'
,但建議讀取之前,還是先看看第一個Sheet的名稱是什麼)。
其實也可以使用sheetname=[0,2]
,表示讀取第一個和第三個sheet,跳過了第二個,因為sheet數目從0開始。這樣讀進來的其實是一個 OrderedDict
,裡面包含兩個DataFrame
.,使用 df[0]
,就是我們讀入的第一個Sheet。
後面會繼續對pandas庫中的其它函式進行介紹。
相關推薦
pandas庫隨筆——Cheat Sheet與資料讀取
由於自己是從R轉Python,平時用慣了R對資料進行處理、轉化等操作,如今過渡到Python上還有些許的不適應。但還是不得不感嘆pandas的強大之處,一個庫頂的上R中數個包合併在一起使用。 因為平時的使用比較雜,都是隨用隨查,所以在pandas庫的使用上也是
【python】詳解pandas庫的pd.merge_ordered與pd.merge_asof
merge_ordered: 函式允許組合時間序列和其他有序資料。 特別是它有一個可選的fill_method關鍵字來填充/插入缺失的資料。 import pandas as pd left = pd.DataFrame({'k': ['K0', 'K1', 'K1'
pandas的行列名更改與資料選擇
記錄一些pandas選擇資料的內容,此前首先說行列名的獲取和更改,以方便獲取資料。此文作為學習鞏固。這篇博的內容順序大概就是: 行列名的獲取 —> 行列名的更改 —> 資料選擇一、pandas的行列名獲取和更改1. 獲取: df.index()
【MySQL基礎】庫的基本操作與資料型別
1.資料庫伺服器、資料庫和表的關係 圖解 2.建立資料庫 (1)普通的定義方式: CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, creat
Hive內部表與外部表區別,資料匯入與資料讀取方式小結
建立一個外部表: 使用'|'作為分隔符,‘\n’回車作為換行符,指定資料倉庫地址 hive> CREATE EXTERNAL TABLE rdcuser ( > id int, > name string, > passwo
Pandas模組:表計算與資料分析
一、pandas簡單介紹 1、pandas是一個強大的Python資料分析的工具包。2、pandas是基於NumPy構建的。 3、pandas的主要功能 具備對其功能的資料結構DataFrame、Series 整合時間序列功能
python資料分析處理庫-Pandas資料讀取、索引與計算
Pandas資料讀取、索引與計算 Pandas資料結構為DataFrame,裡面可以同時是int、float、object(string型別時)、datatime、bool資料型別 import p
【python】pandas庫pd.read_pickle操作讀取pickle資料與.to_pickle()永久儲存資料
之前總結了python的pickle庫的操作,儲存資料使用pickle.dump(obj, file, [,protocol]),將物件obj儲存到檔案file中去。使用pickle.load(file)從file中讀取一個字串,並將它重構為原來的python物
Python 資料分析與展示筆記4 -- Pandas 庫基礎
Python 資料分析與展示筆記4 – Pandas 庫基礎 Python 資料分析與展示系列筆記是筆者學習、實踐Python 資料分析與展示的相關筆記 課程連結: Python 資料分析與展示 參考文件: Numpy 官方文件(英文) Numpy 官方文件(中文) P
7.python資料分析與展示------Pandas庫入門
1.Pandas庫的介紹Pandas是Python第三方庫,提供高效能易用資料型別和分析工具 import pandas as pdPandas基於Numpy實現,常與Numpy和Matplotlib一同使用import pandas as
【python】pandas庫pd.read_excel操作讀取excel檔案引數整理與例項
除了使用xlrd庫或者xlwt庫進行對excel表格的操作讀與寫,而且pandas庫同樣支援excel的操作;且pandas操作更加簡介方便。 首先是pd.read_excel的引數:函式為: pd.read_excel(io, sheetname=0,he
【A-003】python資料分析與機器學習實戰 Python科學計算庫 Pandas資料分析處理庫(四)DataFrame資料結構
pandas資料結構:DataFrame 引入: 在上一節中已經介紹過了Series物件,Series物件可以理解為由一列索引和一列值,共兩列資料組成的結構。而DataFrame就是由一列索引和多列值組成的結構,其中,在DataFrame中的每一列都是一個S
Python資料科學:Pandas Cheat Sheet
Key and Imports In this cheat sheet, we use the following shorthand: df | Any pandas DataFrame object s | Any pandas Series obje
資料分析---pandas庫
一、生成資料表 1、首先匯入pandas庫,一般都會用到numpy庫,所以我們先匯入備用: import numpy as np import pandas as pd 2、匯入CSV或者xlsx檔案: df = pd.DataFrame(pd.r
pandas庫簡介(1)--pandas的三種資料結構
/****************持續更新中**************************/ pandas有三種資料結構形式,分別是Series,DataFrame和索引物件。 1.Series Series和一維陣列很像,只是它的每一個值都有一個索引,輸出顯示時索引在左,值在右。
python之pandas的層級索引與資料重構
import numpy as np import pandas as pd #層級索引 s1 = pd.Series(np.random.randint(-5,10,12),index=[list('aaabbbcccddd'),[1,2,4,1,2,3,1,2,3,1,2,3]]) p
Cris 的 Python 資料分析筆記 05:Pandas 資料讀取,索引,切片,計算,列整合,過濾,最值
Pandas 資料讀取,索引,切片,計算,列整合,過濾,最值 文章目錄 Pandas 資料讀取,索引,切片,計算,列整合,過濾,最值 1. read_csv 函式 2. DataFrame 資料結構的常用
[Xcode10 實際操作]七、檔案與資料-(8 )讀取和解析Plist檔案(屬性列表檔案)
本文將演示如何讀取和解析Plist檔案,即屬性列表檔案。 它是用來儲存,序列化後的物件的檔案。 在專案名稱上點選滑鼠右鍵,彈出右鍵選單, 選擇【New File】新建檔案命令,建立一份屬性列表檔案。 在彈出的模板選項視窗中,點選右側的垂直滾動條,跳轉到【Resource】資原始檔的模板列表。 然後選
C++學習筆記(二):開啟檔案、讀取資料、資料定位與資料寫入
1.開啟二進位制檔案(fopen)、讀取資料(fread),應用示例如下: FILE *fp = fopen("data.yuv", "rb+"); //開啟當前目錄中的data.yuv檔案 char *buffer = ( char*) malloc (sizeof(char)*FrameSi
R 語言資料讀取與儲存
一、R語言讀取文字檔案: 1、檔案目錄操作:getwd() : 返回當前工作目錄setwd(“d:/data”) 更改工作目錄 2、常用的讀取指令readread.table() : 讀取文字檔案read.csv(): 讀取csv檔案如果出現缺失值,read.