赛博空间7号

The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge.--Stephen William Hawking

pandas学习笔记(一)--learn from dataquest.io

import pandas as pd
food_info = pd.read_csv('food_info.csv')

使用panda.read_csv()读取文件后,food_info变为DataFrame类的对象

  •  food_info.columns会列举所有列索引

  •  food_info.index会列举所有行索引

  • food_info.values可以将DataFrame转换为numpy的array形式

  •  food_info.shape返回DataFrame对象的形状(几行几列)

  •  food_info.dtypes返回所有列的数据类型



DataFrame对象的每行和每列都是一个Series对象:

Series对象是带有索引的值的向量

索引行:

food_info.loc[99]#按照index索引
food_info.iloc[99]#按照position索引

索引列:

ndb_col = food_info["NDB_No"]

注:Series对象可以使用Series.tolist()方法把Series对象转化为列表


索引多行:

food_info.loc[3:6]#连续行 类型是DataFrame
food_info.loc[[2,5,10]]#离散行 类型是DataFrame

索引多列:

zinc_copper = food_info[["Zinc_(mg)", "Copper_(mg)"]]#类型是DataFrame

假如某一列都是数值,我们可以对其进行加减乘除操作,可以使用Series.min()、Series.max()方法提取一列的最大最小值

 food_info["Energ_Kcal"] / 2
 food_info["Norm_Nutr_Index"] = 2 * food_info["Normalized_Protein"] - 0.75 * food_info["Normalized_Fat"]
 food_info['Protein_(g)'].max()

数据排序

使用DataFrame.sort_index()按照索引排序(行或列),使用DataFrame.sort_values()按照某列进行排序

food_info.sort_values('Norm_Nutr_Index',inplace=True,ascending = False)#inpalce=True意味这不重新生成新的DataFrame,
直接改变当前的DataFrame,ascending=False意味按降序


  • 评论列表
  • 武胜 于 2018-05-19 08:47:40  
  • 文章很好值得一看

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

© 版权所有:沈阳市和平区赛博空间咨询部|辽ICP备18005891号
Powered by Z-BlogPHP & Yiwuku.com