pandas 学习笔记(1)
一、遍历数据:
1、for index,val in df.iterrows(): # 按行
2、for column ,val in df.items(): #按列
二、统计数据:
print((df == 0).astype(int).sum(axis=0)) #统计符合某个条件的数量
df.loc['hj'] = (df == 0).astype(int).sum(axis=0)
df = pd.DataFrame.from_dict(d,orient='index')
df = pd.DataFrame(pd.Series(d),columns=['value'])#字典创建Dataform
单条件筛选,例如查询gender为woman的数据:
df[df["gender"]=="woman"]# 或 df.loc[df["gender"]=="woman"]

使用isin()函数筛选,例如查询age为24、28的数据:
df[df["age"].isin([24,28])]

当有多个过滤条件时,可以使用逻辑操作符&和|,如下。
例如:查询gender为“woman”并且city为“shanghai”的数据:
df[(df["gender"]=="woman") & (df["city"]=="shanghai")]
查询age大于25或者gender为“woman”的数据:
df[(df["age"]>25) | (df["gender"]=="woman")]
注意:逻辑操作符两边的过滤条件必须使用小括号()括起来,否则会报错或者不起作用。
波浪线符~可以取指定条件相反的数据,例如查询city不为“beijing”的数据:
df[~(df["city"]=="beijing")]
二、Dataframe数据遍历

如果要遍历 DataFrame 的行数据,需要使用以下方法:
iteritems()方法
python3 中换成items()
iteritems()方法是按列进行遍历,遍历结果为为(列名, value)键值对:
for column, value in df.iteritems():
print(column)
print(value)

iterrows()方法
iterrows()方法是按行进行遍历,遍历结果为(index, value)键值对:
for index, row in df.iterrows():
print(index)
print(row)

itertuples()方法
itertuples()是以namedtuples(命名元组)形式遍历行,遍历每一行为一个命名元组:
for row in df.itertuples():
print(row)
for line in data.itertuples():
print(getattr(line, 'date'))

浙公网安备 33010602011771号