In [1]:
import pandas as pd
from pandas import Series, DataFrame
import numpy as np
In [8]:
df = DataFrame(np.random.randn(6,4), columns=list('ABCD'))
df
Out[8]:
选择A列的数据
In [3]:
df['A']
Out[3]:
切片得到行数据
In [4]:
df[1:3]
Out[4]:
DataFrame的loc方法帮助选择数据
In [9]:
# 选择第0行数据
df.loc[0]
Out[9]:
In [10]:
# 选择多列数据
df.loc[:, ['A', 'B']]
Out[10]:
In [11]:
# 选择局部数据,行列交叉区域的数据
df.loc[0:2, ['A', 'B']]
Out[11]:
In [12]:
# 只选择一个数据
df.loc[0, 'A']
Out[12]:
at方法用于专门获取某个值
In [13]:
df.at[0, 'A']
Out[13]:
iloc方法提取第四行数据
In [14]:
df.iloc[3]
Out[14]:
In [15]:
# 返回series数据类型
type(df.iloc[3])
Out[15]:
In [16]:
# 返回地4-5行,1-2列
df.iloc[3:5, 0:2]
Out[16]:
In [17]:
# 提取不连续行和列的数
df.iloc[[1,2,4], [0,2]]
Out[17]:
In [18]:
# 提取某一个值
df.iloc[1,1]
Out[18]:
iat是专门提取某个数的方法,效率更高
In [19]:
df.iat[1,1]
Out[19]:
In [21]:
# 筛选D列数据中大于0的行
df[df.D > 0]
Out[21]:
In [22]:
# 使用&符号实现多条件筛选
df[(df.D > 0) & (df.C < 0)]
Out[22]:
加入我们只需要A和B列的数据,而D和C列数据都是用于筛选的,可如此写
In [23]:
df[['A', 'B']][(df.D > 0) & (df.C < 0)]
Out[23]:
通过insin方法来筛选特定的值
In [ ]:
#
alist = [1, 0.054497, 0.36]