Pandas使用总结

        第一参加阿里天池举办的比赛,关于美年双高预测的比赛,成绩0.08。因为之前只学习过理论,没有具体做过项目,对python会一些,但对pandas基本从零开始。比赛初期基本copy大佬的数据处理部分的代码,后面再在此基础上修改。天池的比赛,比较贴近实际的项目,还是很有参与价值的。在这个比赛中,我也认识到了特征工程的重要性,特征决定了算法的上限,模型是无限接近上限的手段。所以特征工程非常重要,而pandas是数据处理重要模块。

        1  读取存入文件:

        train = pd.read_csv('../data/meinian_round1_train_20180408.csv', sep=',',encoding='gbk')

   table_id_group.to_csv('../data/part_tabid_size.csv',encoding='utf-8')
  第一参数:文件路径,注意用反斜杆,或者用双正斜杠。

   2 DataFrame的创建:   

   字典创建:

   data= {data = {'state':['Ohio', 'Ohio'],'year':[2000, 2001],'pop':[1.5,1.7]}

    Train = pd.DataFrame(data, index=['2','3','4','5'])

  series创建:

    data = {'state':Series(['Ohio', 'Ohio']),'year':Series([2000, 2001]), 'pop':Series([1.5,1.7])}

    Train= DataFrame(data,index=['2','3','4','5'])

     

    3 DataFrame的行列索引:

     行选择

     data=Train.iloc[1:3]

    data=Train.loc[1:3,['state']]

     列选择

     data = Train['state']

      data = Train[Train.columns[1]]

   4 DataFrame操作

    拼接操作

   

   part1_2 = pd.concat([data_part1,data_part2],axis=0)
   axis =0 按行拼接,axis=1按列拼接
   
   part1_2 = pd.DataFrame(part1_2).sort_values(by='vid',ascending=True).reset_index(drop=True)
 
 
   part1_2.dropna(axis=0,how='all')
   
    part1_2.dropna(axis=0,how='any')
 
       part1_2.dropna(axis=0,thresh=1)
 填充NAN的行列
  part1_2.fillna(0) #填充0
  
 part1_2.fillna({1:0,2:0.5})#第1列填充0,第2列填充0.5
 
  part1_2.fillna(method='ffill')#用前1列的值替代当前NAN
         分组
    
  part1_2.groupby(['vid']).size().reset_index()




 
    

   


    


     

    

     

                


   


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值