numpy 幫我們處理數值型資料,pandas能夠處理多種型別的資料,這裡只寫5種常用的,其它請轉官方文件
1.1.1 read_csv
import pandas as pd
#讀取csv 常用引數 一般來說我們應該都是直接read吧?
pd.read_csv(filepath_or_buffer,sep,delimiter,delim_whitespace,header,names,index_col,usecols,dtype,skiprows)
引數
注釋filepath_or_buffer
檔案的路徑或者位址,url,或者類似檔案的物件,當是類似檔案物件的時候,我們使用read()方法引用物件。
sep預設的分割符「,」
delimiter
可選擇的分割符,可以自己定義,設定時sep不起作用
delim_whitespace
指定』 』 or '\t』為分割符,預設false,啟用設定為true,設定為true時,delimiter不起作用
header
1、指定行作為列名和資料的開始,沒有列名等同於header=0,如果存在列名,等同於header=none,(這應該是不使用header的效果); 2、引數可以為list,這時選取多行作為列名;3、當skip_blank_lines=true時,預設時ture,header =0 是資料開始的,而不是檔案的第一行。
names
自定義列名,需要設定header=none
index_col
指定那幾列作為行索引,引數可以是列名或者列的序號,當設定index_col=false時,pandas不會選取第一列作為索引,eg: 每行末尾有不合適的分割符(沒動)
usecols
選取使用的列
dtype
載入的資料型別或者每一列的資料型別,需要傳字典。
skiprow
跳過0-當前行
1.1.2 read_table
與read_csv 類似,常用的引數除了sep的預設值不一樣,其他的基本相同,我們可以用read_csv讀取text檔案,這是設定分割符為`\t`即可。
import pandas as pd
#讀取text 常用引數 pd.read_table(filepath_or_buffer,sep,delimiter,delim_whitespace,header,names,index_col,usecols,dtype)
把excel檔案轉換成dataframe型別
read_excel(io,sheet_name=
0,header=
0,names=
none
,index_col=
none
,use_cols=
none
,dtype=
none
,skip_rows)
#空值這幾個也不是很常用
na_values 、keep_default_na、na_filter
引數
注釋io
檔案的路徑或者位址,url,或者類似檔案的物件,當是類似檔案物件的時候,我們使用read()方法引用物件。
sheet_name
可以是中文名稱,也可以是位置序號
header
選取第幾行做為列名,預設0
names
自定義列名,需要設定header=none
index_col
預設空,傳入列表,會生成聚合索引,索引取決於選擇的列
use_col
選取使用的列,可以是位置序號也可以是列名稱
skiprows
過0-當前行
na_values
預設none,設定把什麼樣的數字轉換成nan
keep_default_na
ture 啟用na_values,none不啟用na_values
na_filter
預設ture,查詢缺失值,在沒有缺失值的檔案中可以關閉,可以加快速度。
pandas.read_json(path_or_buf=
none
, orient=
none
, typ=
'frame'
, dtype=
none
, convert_axes=
none
, convert_dates=
true
, keep_default_dates=
true
, numpy=
false
, precise_float=
false
, date_unit=
none
, encoding=
none
, lines=
false
, chunksize=
none
, compression=
'infer'
)
引數
注釋path_or_buf
json 字串,路徑或者類似檔案的物件,當是類似檔案物件的時候,我們使用read()方法引用物件。
orient
json的型別,我們知道json有多種巢狀方式,如下表所示;當typ= series,可選引數為:,預設是index;當typ = frame,可選引數為:,預設是columns.此時index必須是唯一的。注:0.23.0加入的』table』
typ是轉換成series或者frame,預設是frame
dtype
bool或者dict,預設none, 當為true時,會自行推測資料型別並轉換。為none時,原樣輸入,對於orient=『table』,預設為true,(這裡存有疑問?️,20200315) 注:0.25.0不應用於orient=『table』
convert_axes
嘗試做適當的軸變換,預設none,
convert_dates
bool或者字串列表,預設true.轉換也寫類似時間的列。
keep_default_dates
如果解析時間,解析預設的類似時間的列。
numpy
1.0.0 開始廢棄
precise_float
當把字串型別轉換為數值可以使用高精度。預設:false,採用低精度,提高速度。
date_unit
可以認為是時間精度設定,預設none,可傳入 『s』, 『ms』, 『us』 or 『ns』 設定時間精度。
encoding
字元編碼,預設『utf-8』
lines
bool,預設none,把每一行當作乙個json物件讀入。
chunksize
當line為true是才可傳參,詳見官方。注:0.21.0
compression
實時從硬碟解壓資料。可選引數,預設:『infer』,跟據檔案的字尾名如:gzip, bz2, zip or xz,其他的不解壓。如果使用』zip』,這個壓縮包中要至少含有乙個檔案。設定為:none 不解壓。
orient 樣式
引數型別
split
dict like
records
list like [, … , ]
index
dict like }
columns
dict like }
values
just the values array
read_clipboard是從剪下板獲取資料,預設引數sep=『s+』,表示乙個或多個空格,其它和read_csv一致。
#提取sql結果集或者表
pandas.read_sql(sql, con, index_col=
none
, coerce_float=
true
, params=
none
, parse_dates=
none
, columns=
none
, chunksize=
none
)
引數
型別sql
sql語句或者表名
con資料庫鏈結,用過python連線過其它資料庫應該很好理解。
index_col
預設為空,索引的列名,乙個或者list.
coerce_float
將非字串、非數字物件的值轉換為浮點型
params
這個應該是把引數傳到sql裡面,在寫sql的時候用引數去寫。【存疑】
parse_dates
要轉換成日期的列
columns
設定列名,只有在讀表的時候才能用。
chunksize
返回乙個迭代器,指定每次的行數。
現學現賣之pandas 02資料的選擇
1 series and dataframe series,只是乙個一維資料結構,它由index和value組成。dataframe,是乙個二維結構,除了擁有index和value之 外,還擁有column。數值提取的方法並不唯一,形式也並不固定,這裡列出的也並非全部,有興趣可以繼續探索。2 取值i...
PAT哈利 波特的考試 現學現賣啦
7 2 哈利 波特的考試 25 分 哈利 波特要考試了,他需要你的幫助。這門課學的是用魔咒將一種動物變成另一種動物的本事。例如將貓變成老鼠的魔咒是haha,將老鼠變成魚的魔咒是hehe等等。反方向變化的魔咒就是簡單地將原來的魔咒倒過來念,例如ahah可以將老鼠變成貓。另外,如果想把貓變成魚,可以通過...
批處理使用(小試牛刀現學現賣,嘻)
注 注釋部分不屬於bat的語法 1.呼叫pdf2swf.exe,單個轉換swf,假設命名為aaa.bat echo off c 指定到c盤 cd program files swftools cd c program files swftools pdf2swf c temp 17.pdf o c ...