documentation:中文文件:
import pandas as pd
series
是帶標籤的一維陣列,可儲存整數、浮點數、字串、python 物件等型別的資料。軸標籤統稱為索引。呼叫pd.series
函式即可建立 series。dataframe是由多種型別的列構成的二維標籤資料結構,類似於 excel 、sql 表,或 series 物件構成的字典。>>> s = pd.series(data, index=index)
>>> pd.dataframe(d, index=['d', 'b', 'a'], columns=['two', 'three'])
dataframe.drop(labels=none,axis=0, index=none, columns=none, inplace=false)引數說明:
labels 就是要刪除的行列的名字,用列表給定
axis 預設為0,指刪除行,因此刪除columns時要指定axis=1;
index 直接指定要刪除的行
columns 直接指定要刪除的列
inplace=false,預設該刪除操作不改變原資料,而是返回乙個執行刪除操作後的新dataframe;
inplace=true,則會直接在原資料上進行刪除操作,刪除後無法返回。
因此,刪除行列有兩種方式:
1)labels=none,axis=0 的組合
2)index或columns直接指定要刪除的行或列
#刪除列名為a的列,如果inplace不寫預設為false,並沒有在原資料中刪除
test_1.drop('a', axis=1, inplace=true)
test_1.head(3)
#刪除列名為a的列
del test_1['a']
#刪除第0,2,4列 ,axis=0表示行,1表示列
test_1.drop(df.columns[[0, 1, 3]], axis=1)
#隱藏某列,如'age','ticket',只觀察其他幾個列元素
test_1.drop(['age','ticket'],axis=1).head(3)
#這樣寫不可以,顯示出來的是全部
test_1.drop(['age','ticket'],axis=1)
test_1.head(3)
in [307]: data
out[307]:
a b c d
0 bar one z 1.0
1 bar two y 2.0
2 foo one x 3.0
3 foo two w 4.0
in [308]: indexed1 = data.set_index('c')
in [309]: indexed1
out[309]:
a b d
c
z bar one 1.0
y bar two 2.0
x foo one 3.0
w foo two 4.0
in [310]: indexed2 = data.set_index(['a', 'b'])
in [311]: indexed2
out[311]:
c d
a b
bar one z 1.0
two y 2.0
foo one x 3.0
two w 4.0
dataframe.reset_index(level=none, drop=false, inplace=false, col_level=0, col_fill=」)
作用:還原索引,重新變為預設的整型索引
引數說明:
level:數值型別可以為:int、str、tuple或list,預設無,僅從索引中刪除給定級別。預設情況下移除所有級別。控制了具體要還原的那個等級的索引 。
drop:當指定drop=false時,則索引列會被還原為普通列;否則,經設定後的新索引值被會丟棄。預設為false。
inplace:輸入布林值,表示當前操作是否對原資料生效,預設為false。
col_level:數值型別為int或str,預設值為0,如果列有多個級別,則確定將標籤插入到哪個級別。預設情況下,它將插入到第一級。
col_fill:物件,預設『』,如果列有多個級別,則確定其他級別的命名方式。如果沒有,則重複索引名。
注:不僅僅恢復set_index的索引,對於其他篩選也有作用,比如midage = df[(df["age"]>10)& (df["age"]<50)]
in [318]: data
out[318]:
c d
a b
bar one z 1.0
two y 2.0
foo one x 3.0
two w 4.0
in [319]: data.reset_index()
out[319]:
a b c d
0 bar one z 1.0
1 bar two y 2.0
2 foo one x 3.0
3 foo two w 4.0
#不僅僅恢復set_index的索引,對於其他篩選也有作用,比如
midage = df[(df["age"]>10)& (df["age"]<50)]
midage = midage.reset_index(drop=true)
loc函式:通過行索引 "index" 中的具體值來取行資料(如取"index"為"a"的行) df.loc[ [行號/名], [列號/名] ]iloc函式:通過行號來取行資料(如取第二行的資料) df.iloc[ [行號], [列號] ]
#將midage的資料中第100,105,108行的"pclass","name"和"***"的資料顯示出來
midage.loc[[100,105,108],['pclass','name','***']]
midage.iloc[[100,105,108],[2,3,4]]
dataframe.sort_index(axis=0, level=none, ascending=true, inplace=false, kind=』quicksort』, na_position=』last』, sort_remaining=true, by=none)
引數說明:
axis:索引,axis=1按列排序,axis=0按行排序
level:如果不是,則對指定索引級別的值進行排序
ascending:公升序與降序排序,預設公升序
inplace:如果為true,則就地執行操作
kind:,預設為「快速排序」。選擇排序演算法。有關更多資訊,另請參見ndarray.np.sort。 mergesort是唯一穩定的演算法。對於dataframe,此選項僅在對單個列或標籤進行排序時適用。
na_position:[,預設為'last']首先將nan放在開頭,最後將nan放在結尾。未針對multiindex實施。
sort_remaining:如果為true且按級別和索引排序是多層,則按指定級別排序後也按其他級別(按順序)排序
dataframe.sort_values(by, axis=0, ascending=true, inplace=false, kind='quicksort', na_position='last')
引數說明:
by:指出某個列/行名,對該列/行進行排序
其他引數同上
pandas基礎操作
pandas中最基礎的資料結構叫做dataframe,類似excel中的表結構,包含欄與列的集合,可根據欄與列運算元據,類似r的dataframe。下面來看一些基礎操作,在資料清洗與處理階段,這些操作需熟練掌握。1.建立dataframe import pandas as pd data pd.da...
Pandas 基本介紹和基礎操作
目錄 一 numpy和pandas的不同 二 pandas序列操作 二 pandas序列 import pandas as pd import numpy as np 1.生成乙個簡單的一維陣列 下面的語句可以理解為新建了乙個一維陣列,但是每行都有乙個標號 s pd.series 1,3,6,np....
pandas列相加 Pandas 基礎
git 上pandas學習教程,共有十章 4個板塊 pandas基礎 四類操作 四類資料 例子。原文內容系統的講解了pandas庫的使用方法,編排邏輯易懂,覆蓋面廣且含有相應練習,之前已經學習過pandas,但是感覺應用時有些費力,計畫重新按照學習教程再梳理一遍,爭取10天完成學習,enjoy ti...