pandas導入excel用read_excel()方法:python
import pandas as pd
excel_file1 = pd.read_excel('data/測試.xlsx',encoding='utf-8')複製代碼
姓名 年齡 工做 工資
0 張三 25 學生 200
1 李四 24 工人 3000
2 王偉 28 NaN 5000
3 王二毛 22 自由職業 6000複製代碼
第一個參數是路徑,既能夠使用絕對路徑又能夠使用相對路徑,若是文件名含有漢字,注意指定設置一下屬性encoding = 'utf-8'
,另設置sheet_name
指定具體的Sheet名字,也可傳入sheet的順序,從0開始。mysql
excel_file1 = pd.read_excel('data/test.xlsx',sheet_name = 0)複製代碼
列索引默認從0開始,經過index_col
設置,header
設置行索引。sql
excel_file1 = pd.read_excel('data/測試.xlsx',encoding='utf-8',index_col=0)複製代碼
年齡 工做 年資
姓名
張三 25 學生 200
李四 24 工人 3000
王偉 28 NaN 5000
王二毛 22 自由職業 6000複製代碼
excel_file1 = pd.read_excel('data/測試.xlsx',encoding='utf-8',header=1)複製代碼
張三 25 學生 200
0 李四 24 工人 3000
1 王偉 28 NaN 5000
2 王二毛 22 自由職業 6000複製代碼
有時本地文件列數太多,能夠設置usercols
指定導入的列,也能夠列表形式傳入多個值,表示傳入哪些列。數據庫
excel_file1 = pd.read_excel('data/測試.xlsx',encoding='utf-8',usecols=[0,2])複製代碼
姓名 工做
0 張三 學生
1 李四 工人
2 王偉 NaN
3 王二毛 自由職業複製代碼
shape()
能夠獲取excel文件的行和列,以元祖形式返回;bash
info()
獲取數據類型;測試
astype()
可轉換列裏面的數據類型,括號裏是要轉換的目標類型;如df[列2].astype('float64')
; df['列'].dtype
可查看列的類型編碼
isnull()
判斷哪一個值是缺失值;spa
dropna()
刪除有缺失值的行,返回刪除後的數據,傳入參數how=all,要全爲空值纔會刪除;excel
fillna()
括號內可直接填入要要填充的值,也可指定列填充,以字典形式傳參;code
drop_duplicates()
默認對全部重複值判斷,默認保留keep=first
第一個行值;經過keep
修改,值可爲last
,保留最後一個,還可設置keep
爲False
,一個也不保留。另也可指定列名去重,如傳入參數subset
=['列名1,列名2'],注意是以列表形式傳參;
head()
傳入的參數表明獲取前幾行;
describe()
掌握數值的分佈狀況,如均值,最值,方差,分位數。
column
和index
可設置列索引
和行索引
,以列表
形式傳參;
set_index()
從新設置索引列,傳入要指名要用作行索引的名稱;
reset_index(level = None,drop=False,inplace = False)
,level指定要將層次化索引的第幾級別轉化爲columns
,第一個索引爲0級,第二個爲1級,默認所有轉化爲columns。drop
是否將原索引刪掉,inplace
是否修改原數據表;該方法經常使用於數據分組和數據透視表中。
rename()
重命名索引,可從新設置columns
和index
,以字典
形式傳參,key
爲原值,value
爲替換後的值。
pandas導入csv文件用read_csv()方法;
import pandas as pd
csv_file1 = pd.read_csv('.\\data\\train-pivot.csv',index_col=0,header=0,nrows = 2) 複製代碼
經過sep
設置分割符,encoding
指定編碼格式。導入csv文件要指定爲gbk,否則會報錯,若是一個大文件你只需看前面幾行,經過nrows
設置。
import pandas as pd
csv_file1 = pd.read_csv('data/train-pivot.csv',encoding='gbk',nrows=2)
print(csv_file1)複製代碼
用戶ID 客戶分類 區域 是否省會 7月銷量 8月銷量
0 59224 A類 一線城市 是 6 20 0
1 55295 B類 三線城市 否 37 27 35複製代碼
能夠設置usercols
指定導入的列。
用戶ID 區域
0 59224 一線城市
1 55295 三線城市
2 46035 二線城市
3 2459 一線城市
4 22179 三線城市複製代碼
pandas中有read_sql()
方法:
import pandas as pd
import pymysql
# 建立鏈接
conn = pymysql.connect(host = 'localhost',user = 'python',
password = 'passwd',db = 'test',
charset = 'utf-8'
)
''' user:用戶名 password:密碼 host:數據庫地址/本機用localhost db:數據庫名 charset:編碼,通常爲utf-8 '''
sql = "SELECT * FROM user" # 寫要執行的sql語句
pd.read_sql(sql,conn)複製代碼
補充:數據導出
df.to_excel() 導出excel文件;
df.to_csv() 導出csv文件;