python(16)-pandas-单类型统计-信息分类问题

1.情境描述: 提示信息,一条记录只属于一类 ,按类型统计信息
2.实现步骤:文件中,提示信息有3种类型,20万条记录。

 读文件->查看数据信息->统计分类->构造全0数组->遍历3次赋值,不是20万次->求和
3.知识点:
  1.查看数据信息 df.info() 默认读前5条 主要看缺失值
   2.建全0数组
   np.zeros((df.shape[0], len(cate_list)))
  3.对应位置赋值为1,循环3次而不是遍历 20万次
    zeros_df[cate][df["title"].str.contains(cate)] = 1


流程代码

def main():
    #1.读取 #路径是对的 ./默认路径下
    filePath="./data/info.csv"
    df=pd.read_csv(filePath)
    #2.查看数据信息 看是否有缺失值
    print(df.head())   #数据条数为20万,数据种类为3种
    print(df.info())
    #3.统计分类
    temp_list =df["title"].str.split(":").tolist()
    cate_list =list(set([i[0] for i in temp_list])) #得3种分类
    #4.构造全0数组
    zeros_df = pd.DataFrame(np.zeros((df.shape[0], len(cate_list))), columns=cate_list)
    #5.赋值 遍历3次(实例中是3种类型) 不是遍历20万条
    for cate in cate_list:
         zeros_df[cate][df["title"].str.contains(cate)] = 1

    print(zeros_df)  # [203909 rows x 3 columns]

    #6.求和
    sum_ret=zeros_df.sum(axis=0)

 

posted @ 2019-12-21 15:44  jasmineTang  阅读(113)  评论(0)    收藏  举报