Numpy:
- astype:显式转换成其他dtype类型
arr.array([1,2,3,4,5]) # int --> float64 folat_arr = arr.astype(np.float64) # arr.astype(float64) , numpy会自动映射到等价dtype上
- np.nan : 手动设定NaN
Pandas:
- 数据读入:pd.read_csv('目标文件.csv') ;读取指定列数据 data = pd.read_csv('data.csv',usecols=[0,1,2,3])
- 看前十条数据:df.head(10)
- 维度:df.shape
- Series.name = '自定义名字' :Series重命名
# Series --> DataFrame average_price,profit_day = average_price.to_frame(name=u'每日均价'),profit_day.to_frame(name=u'每日利润')
- 模糊匹配并筛选出相关数据:
r = r'%s' % sku_name data = df[df.index.str.contains(r, na=True)] # 分别筛选各个系列的详细数据
- 统计非NA值的数量:df.count()
- 针对Series或各DataFrame列计算汇总统计:df.describe()
print df[(df['PCTL']<0.95) & (df['PCTL']>0.05)] 如果是要对element-wise作判断,考虑用df.map 如果是运算考虑用df.apply + lambda
-
比如有一个DF,有三列:姓名,金额,电话。如何把名字相同的金额合计成一行,电话保持不变, 索引不变?Df.groupby(姓名,as_index = False)[金额].unique()