pandas提取数据的特定行列

pandas可利用loc,iloc以及ix来提取特定行列,在最新版的pandas中ix已被弃用,推荐使用loc,和iloc来提取特定行列。

loc利用标签来获得行列
import numpy as np
import pandas as pd
d = np.arange(12).reshape((3,4))
df = pd.DataFrame(d, columns = ['a', 'b', 'c', 'd'], index = [6,4,7])
df
   a  b   c   d
6  0  1   2   3
4  4  5   6   7
7  8  9  10  11
df.loc[:4]    #取得标签为4以前的行
   a  b  c  d
6  0  1  2  3
4  4  5  6  7
df.loc[:4,:'c']    #同时以行列标签来取值
   a  b  c
6  0  1  2
4  4  5  6
df.loc[[4,6],['b','c']]   #取得特定标签的行列
   b  c
4  5  6
6  1  2
iloc利用索引来获得目的行列
df.iloc[:1]     #只有一个则取行
   a  b  c  d
6  0  1  2  3
df.iloc[:2,:2]
   a  b
6  0  1
4  4  5
#当然也可以利用iloc来取得特定行列的值
df.iloc[1,2]
6

链式索引赋值

df_pkg_app.loc[df_pkg_app['app'].apply(lambda x: regex_filter(x, '风行|fun')) 
    df_pkg_app['pkg'].apply(lambda x: regex_filter(x, '风行|fun')), 'uni_pkg']= 'funshion'

你可能感兴趣的:(pandas提取数据的特定行列)