Python Pandas常用方法

2021-10-01 14:37:37 字數 2455 閱讀 2135

1、pandas-dataframe 基礎

import numpy as np

import pandas as pd

# 建立 dataframe

dic =

df = pd.dataframe(dic) # 字典轉化為dataframe

# 外部檔案讀入dataframe

dic2 = pd.read_csv('f:/u_value.txt', encoding='utf-8')

# 預設第一行為列名,即header=0 (header=1,配合names=,指定列名),若第一行即為資料則header=none

# sep delimiter 指定分隔符

# dtype= dtype 指定字段格式

dic2.columns=['a','b','c'] # 修改列名

print(df) # 展示全部行

print(df.head()) # 顯示前n行,預設5

ps: 資料左側0 1 2 3 4 為索引號。 

2、 訪問 dataframe  【loc iloc ix】

df_t = df.t  # 轉製

df.uid df['uid'] # 某一列

df[['uid', 'v01']] # 某(幾)列

df.loc[[0,1]] # 索引號為 0 1 的行

df.loc[[0,1],['uid','v01']] # 索引號為 0 1 的某些欄位的值

# 篩選訪問

df[['uid','v01']][(df.uid.isin(['001', '003']))] #條件為uid.isin(['001', '003'])

df.loc[:, ['uid','v01']][(df.uid.isin(['001', '003']))]

# loc 方式

df.loc[df.uid.isin(['001', '003']), ['uid', 'v01']]

## ps:loc 通過索引號索引名、列名進行訪問

## iloc 通過行列索引號訪問

3、dataframe的合併與聚合 

# -----合併-----

df_new = pd.merge(df, dic2, how='left', left_on='uid', right_on='a').drop(['a', 'b', 'v02'], axis=1)

df_new = df_new[['uid', 'v01', 'c']] # 列重新排序

df_new.columns = ['uid', 'v01', 'v02']

# how 合併方式,左/右連線

# left_on right_on 連線的字段

# 出現相同名稱的字段,分別以加 _x _y 全部出現,可以通過drop刪除不必要字段

# 其他欄位可通過columns重新命名。

# 將df_new和df_test連個表合成乙個表,(有新字段結果就生成新字段)

# ------聚合-----

df_buff.groupby('uid').sum() # 其他值都合計

# 對不同列進行不同的聚合

df_groupby = df_buff.groupby('uid').agg()

df_groupby.columns = ['u_cnt', 'u_dis_cnt', 'max_v01', 'sum_v02'] # 重新命名聚合列

4、dataframe的排序

# 排序生成新資料集

df_sort = df_groupby.sort_values(by='max_v01', ascending=false)

# 多列排序 df_groupby.sort_values(['max_v01', 'sum_v02'], ascending=[true, false])

# 在原資料集增加排名列(num)

# 分組排序,(sql視窗函式)

df_2_sort['num'] = df_2_sort['v01'].groupby(df_2_sort['uid']).rank(ascending=false, method='first')

python pandas常用資料處理方法

pandas 1 header 0 不同於 header none header 0 表示 第0行為列 header none 表示讀取的時候 認為沒有標題,全是資料 可以用 skiprows 1 跳過列名 2 pandas 獲取指定的行列資料 df.iloc 0 2,0,3 讀取 第 0,2 行的...

Python Pandas常用命令彙總

dataframe 別名 df series 別名 s import pandas as pd import numpy as nppd.read csv filename 匯入csv格式檔案中的資料 pd.read table filename 匯入有分隔符的文字 如tsv 中的資料 pd.rea...

python pandas 第三方庫的使用

1,安裝pandas 庫 pip install pandas 2,函式的使用 1,讀取 csv 檔案只要用 pd.read csv 就能將 csv 檔案裡的資料轉換成 dataframe 物件 dataframe pd.read csv example.csv 寫入 csv 檔案將 datafra...