1. 程式人生 > >pandas庫隨筆——Cheat Sheet與資料讀取

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 這個函式可以直接讀取 xlsxlsx 等型別的檔案,這比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' 進行儲存)。這裡對我們的檔案(csvtxt等)用記事本開啟,然後點選另存為,在下方有一個編碼:使用 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_orderedpd.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】pandaspd.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】pandaspd.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.