赞
踩
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a':[1.2,2,3,4],
'b':list('abcd')
})
df["a"][1]=np.nan
df.isnull().values.any()
df.isnull().sum()
df.fillna(df.mean())
df[["a"]].head()
df[["b","a"]]
pd.set_option("display.max_columns",4)
pd.set_option("display.max_row",10)
df
pd.set_option("display.float_format",lambda x:"%.4f" % x)
pd.DataFrame({"a":np.random.random(4)})
pd.set_option("display.float_format",None)
df = pd.DataFrame(np.random.random(4), columns=['random'])
df.style.format({'random':'{0:.2%}'.format})
df
index1=pd.Series([str(x) for x in df["random"]])
index1=index1+"_"+index1
df.index=index1
print(df.index.is_unique)
df = pd.DataFrame(
np.random.randint(1, 30, 30).reshape(10,-2),
columns=list('abc'))
n=3
df[df["a"]==df.sort_values("a",axis=0,ascending=False).reset_index()["a"][n-1]]
df.ix[df['a'].argsort()[df.shape[0]-n],:]
df = pd.DataFrame(np.random.randint(10, 40, 60).reshape(-1, 4))
rowsums = df.apply(np.sum, axis=1)
df[rowsums>100].iloc[-2:,:]
用相应的5%分位数和95%分位数值替换低于5%分位数和大于95%分位数的所有值
se=pd.Series(np.linspace(-2,2,30))
low,high=se.quantile([0.05,0.95])
se[(se>high)|(se<low)]
将df重塑为最大可能的正方形,并删除负值。如果需要,删除最小值。结果中正数的顺序应保持与原始顺序相同。
df=pd.DataFrame(np.random.normal(size=[5,5]))
q=df[df>0].values.flatten()
q=q[~np.isnan(q)]
n=int(np.floor(q.shape[0]**0.5))
q=q[:n**2].reshape(n,-1)
a,b=df.iloc[0,:].copy(),df.iloc[1,:].copy()
df.iloc[0,:],df.iloc[1,:] = b,a
df.iloc[::-1,:]
df=pd.DataFrame({"fruit":np.random.choice(["apple","bananas","orange"],10),
"sales":np.random.randint(4,10,10)})
pd.concat([pd.get_dummies(df["fruit"]),df["sales"]],axis=1)
df = pd.DataFrame(np.random.randint(1,100, 40).reshape(10, -1))
df.apply(np.argmax, axis=1)
df[0].argsort()
nearest = {}
for i, row in df.iterrows():
c = ((df - row)**2).sum(axis = 1).argsort()
nearest[i] = c[1]
print(nearest)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。