Pandas 核心的数据类型是 Series(数据系列)、DataFrame(数据表/数据框),分别用于处理一维和二维的数据
csv 读取数据,指定 index
category_pd = pd.read_csv("category_temp.csv")category_pd.set_index('GroupID', inplace=True)
读取数据,指定数据类型
similarity_matrix = pd.read_csv(item_cf_result_file, dtype=str)
获取及修改指定数据
sales_df.loc[index, "name"]sales_df.loc[0, "name"]='truman'
排序
df=df.sort_values('price',ascending=True)
df 数据拼接
all_emp_df = pd.concat([emp_df, emp2_df])
遍历数据
# 使用 iterrows() 遍历 DataFramefor index, row in df.iterrows():print(index, row['Name'], row['Age'], row['City'])# 使用 itertuples() 遍历 DataFramefor row in df.itertuples():print(row.Index, row.Name, row.Age, row.City)# 使用 iteritems(),按列迭代 遍历 DataFramefor column, series in df.iteritems():print(column)for value in series:print(value)# 逆序遍历for index, row in df.iloc[::-1].iterrows():print(index, row)
按数值范围分桶
bins = [0, 100, 200, 300, 400, 500, 1000, 2000, 3000]labels = ['<100', '100-200', '200-300', '300-400', '400-500', '500-1000', '1000-2000', '>=2000']price_groups = pd.cut(df['price'], bins=bins, labels=labels, right=False)
分组求和
click_count_by_price = df.groupby(price_groups)['click_sum'].sum()