回答思路
pandas中主要有两种数据结构,分别是:Series和DataFrame。 Series:一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据也可产生简单的Series对象。 DataFrame:一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。 常用功能: ①读入CSV data = pd.read_csv('C:\Users\xxx.csv') 如果涉及中文标题,加入参数: data = pd.read_csv('C:\Users\xxx.csv',encoding='GBK') ②获取行名、列名、行数、列数 data.dtypes # 查看dataframe 的数据类型 data.columns # 列名列表 data.shape #获取行列,返回数组,可以在后面加[0] 行 [1] 列 data.describe() #常看数据统计
③重命名 重命名所有列 data.columns = ['A','B'] 按照顺序重新命名所有列 data.rename(columns={'A':'a', 'B':'b', 'C':'c', 'D':'d'}, inplace = True) 这种方式可以任意更改列名,且不用注意顺序。
④新增列、删除行 data['a'] = data['b']- 1 新增列并赋值 data.drop['2'] 删除索引为2的行
⑤筛选 筛选行列 : df.at、 df.ix、df.loc、df.iloc等用法 df.ix 可以用数字也可以用列明来筛选 如: data.ix[1,1] data.ix["a","B"] df.loc 只能用行名和列名来筛选 data.loc["b","B"] data.loc['b':'c','B','C'] df.iloc 只能用数字 data.loc[1,1] df.at 可以支持数字行序和列名的混合使用: data[1,'a'] 可支持变量序号 如: for i in range(0,100): print(data.at[i,'shop_name']) 筛选空值、等于某值: 单条件: df[df.D>0] 多条件: df[(df.D>0)&(df.C<0)] 包含多值: df.A.isin([‘重庆’,’成都’])
⑥分组 data.groupby("a") #按照a列来分组处理数据,可以对处理后的数据进行sum(),count(),mean()等方式处理 答案解析 这道题主要考察对pandas的使用,只要说出pandas常用的功能及使用方式即可