pandas-索引与数据选择器
- 选择随机样本
s.sample()
s.sample(n=3)
s.sample(n=6,replace=False):replace=True 可以返回多次
s.sample(n=6,replace=True)
产生随机列:
df3 = pd.DataFrame({'col1': [1, 2, 3], 'col2': [2, 3, 4]})
df3.sample(n=1, axis=1)
- 通过调用选择
df1 = pd.DataFrame(np.random.randn(6, 4),
index=list('abcdef'),
columns=list('ABCD'))
df1
df1.loc[lambda df:df.A>0,:]
df1.loc[:,lambda df:['A','B']] | df1.iloc[:,lambda df:[0,1]]
df1[lambda df:df.columns[0]]
调用索引:
df1.A.loc[lambda s:s>0]
- 设置和重置索引
data=pd.DataFrame({'a':['bar','bar','foo','foo'],
'b':['one','two','one','two'],
'c':['z','y','x','w'],
'd':[1.0,2.0,3.0,4.0]})
data
index1=data.set_index('c')
index1
#set_index容许在不删除索引列就地添加索引
data.set_index(['a','b'],inplace=True)
data
#append保持现有索引追加一个指标
frame=frame.set_index(['a','b'],append=True)
frame
重置索引
data.reset_index()