小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Pandas常用命令匯總,建議收藏!

 zZ華 2023-07-12 發(fā)布于廣東

大家好,我是小F~

Pandas是一個(gè)開源Python庫,廣泛用于數(shù)據(jù)操作和分析任務(wù)。

它提供了高效的數(shù)據(jù)結(jié)構(gòu)和功能,使用戶能夠有效地操作和分析結(jié)構(gòu)化數(shù)據(jù)。

憑借其廣泛的功能,Pandas 對于數(shù)據(jù)清理、預(yù)處理、整理和探索性數(shù)據(jù)分析等活動(dòng)具有很大的價(jià)值。

Pandas的核心數(shù)據(jù)結(jié)構(gòu)是Series和DataFrame。

Series是一個(gè)一維標(biāo)記數(shù)組,可以容納多種數(shù)據(jù)類型。DataFrame則是一種二維表狀結(jié)構(gòu),由行和列組成,類似于電子表格或SQL表。

利用這些數(shù)據(jù)結(jié)構(gòu)以及廣泛的功能,用戶可以快速加載、轉(zhuǎn)換、過濾、聚合和可視化數(shù)據(jù)。

Pandas與其他流行的Python庫(如NumPy、Matplotlib和scikit-learn)快速集成。

這種集成促進(jìn)了數(shù)據(jù)操作、分析和可視化的工作流程。

由于其直觀的語法和廣泛的功能,Pandas已成為數(shù)據(jù)科學(xué)家、分析師和研究人員在 Python中處理表格或結(jié)構(gòu)化數(shù)據(jù)的首選工具。 

在這篇文章中,我將介紹Pandas的所有重要功能,并清晰簡潔地解釋它們的用法。

/ 01 /
使用Pandas導(dǎo)入數(shù)據(jù)并讀取文件

要使用pandas導(dǎo)入數(shù)據(jù)和讀取文件,我們可以使用庫提供的read_*函數(shù)。

# 導(dǎo)入Pandas
import pandas as pd 

# 使用Pandas讀取文件

# 讀取CSV文件
df = pd.read_csv('file.csv')

# 讀取Excel文件
df = pd.read_excel('file.xlsx')

# 讀取JSON文件
 df = pd.read_json('file.json')

# 讀取Sql查詢
pd.read_sql(query, connection_object)

# 讀取Parquet文件
df = pd.read_parquet('file.parquet')

# 從url讀取HTML表
url='https://www./table.html'
tables = pd.read_html(url)


/ 02 /
查看和檢查對象

在Pandas中處理數(shù)據(jù)時(shí),我們可以使用多種方法來查看和檢查對象,例如

DataFrame和Series。

# 用于顯示數(shù)據(jù)的前n行
df.head(n)

# 用于顯示數(shù)據(jù)的后n行
df.tail(n)

# 用于獲取數(shù)據(jù)的行數(shù)和列數(shù)
df.shape

# 用于獲取數(shù)據(jù)的索引、數(shù)據(jù)類型和內(nèi)存信息
df.info()
/ 03 /
使用Pandas進(jìn)行數(shù)據(jù)選擇

Pandas提供了各種數(shù)據(jù)選擇方法,允許你從DataFrame或Series中提取特定數(shù)據(jù)。

# 用于獲取帶有標(biāo)簽列的series
df[column]

# 選擇多列
df[['column_name1''column_name2']]

# 通過標(biāo)簽選擇單行
df.loc[label] 

# 通過標(biāo)簽選擇多行
df.loc[[label1, label2, label3]]

# 通過整數(shù)索引選擇單行
df.iloc[index]

# 通過整數(shù)索引選擇多行
df.iloc[start_index:end_index]

# 根據(jù)條件過濾行
df[df['column_name'] > 5 ] 

# 使用多個(gè)條件過濾行
df[(df['column_name1'] > 5) & (df['column_name2'] == 'value')]

# 通過標(biāo)簽選擇特定的行和列
df.loc[row_labels, column_labels]

# 通過整數(shù)索引選擇特定的行和列
df.iloc[row_indices, column_indices] 

# 根據(jù)條件選擇數(shù)據(jù)框中的行和列
df.loc[df['column_name'] > 5, ['column_name1''column_name2']]

/ 04 /
數(shù)據(jù)清洗

數(shù)據(jù)清洗是數(shù)據(jù)預(yù)處理階段的重要步驟,在此階段對數(shù)據(jù)進(jìn)行轉(zhuǎn)換和修改以確保其準(zhǔn)確性、一致性和可靠性。

# 檢查缺失值
df.isnull() 

# 刪除有缺失值的行
df.dropna()

# 用特定值填充缺失值
df.fillna(value) 

# 插入缺失值
df.interpolate()

# 檢查重復(fù)行
df.duplicated()

# 刪除重復(fù)行
df.drop_duplicates()

# 計(jì)算z分?jǐn)?shù)
z_scores = (df - df.mean()) / df.std()

# 根據(jù)z分?jǐn)?shù)識(shí)別離群值
 = df[z_scores > threshold]

# 刪除離群值
df_cleaned = df[z_scores <= threshold]

# 替換列中的值
df['column_name'] = df['column_name'].str.replace('old_value''new_value')

# 刪除前/尾空格
df['column_name'] = df['column_name'].str.strip()

# 將字符串轉(zhuǎn)換為小寫
df['column_name'] = df['column_name'].str.lower()

# 將列轉(zhuǎn)換為不同的數(shù)據(jù)類型
df['column_name'] = df['column_name'].astype('new_type')

# 將列轉(zhuǎn)換為日期時(shí)間
df['date_column'] = pd.to_datetime(df['date_column'])

# 重命名列名
df.columns = ['Cat''Mat''Xat'

# 重置DataFrame的索引
df.reset_index()

/ 05 /
過濾、排序和分組

Pandas是一個(gè)強(qiáng)大的Python庫,用于數(shù)據(jù)操作和分析。

它提供了各種函數(shù)來過濾、排序和分組DataFrame中的數(shù)據(jù)。

# 根據(jù)條件過濾行
df_filtered = df[df['column_name'] > 5]

# 按單列對DataFrame進(jìn)行排序
df_sorted = df.sort_values('column_name')

# 按多列對DataFrame進(jìn)行排序
df_sorted = df.sort_values(['column_name1''column_name2'], ascending=[TrueFalse])

# 按單列對DataFrame進(jìn)行分組并計(jì)算另一列的平均值
grouped_data = df.groupby('column_name')['other_column'].mean()

# 按多列對DataFrame進(jìn)行分組并計(jì)算另一列的總和
grouped_data = df.groupby(['column_name1''column_name2'])['other_column'].sum()

# 計(jì)算列的總和
sum_value = df['column_name'].sum ()

# 計(jì)算列的平均值
mean_value = df['column_name'].mean()

# 計(jì)算列的最大值
max_value = df['column_name'].max()

# 計(jì)算列的最小值
min_value = df[ 'column_name' ].min()

# 統(tǒng)計(jì)列中非空值的個(gè)數(shù)
count = df['column_name'].count() 

# 對DataFrame進(jìn)行分組并重置索引
grouped_data = df.groupby('column_name')['other_column'].sum().reset_index()
/ 06 /
加入/合并

在pandas中,你可以使用各種函數(shù)基于公共列或索引來連接或組合多個(gè)DataFrame。

# 將df中的行添加到df2的末尾
df.append(df2)

# 將df中的列添加到df2的末尾
pd.concat([df, df2])

# 對列A執(zhí)行外連接
outer_join = pd.merge(df1, df2, on='A', how='outer'), axis =1)

# 對列A執(zhí)行內(nèi)連接
inner_join = pd.merge(df1, df2, on='A', how='inner')

# 對列A執(zhí)行左連接
left_join = pd.merge(df1, df2, on='A', how='left'

# 對列A執(zhí)行右連接
right_join = pd.merge(df1, df2, on='A', how='right')

/ 07 /
Pandas中的統(tǒng)計(jì)

Pandas提供了廣泛的統(tǒng)計(jì)函數(shù)和方法來分析DataFrame或Series中的數(shù)據(jù)。

# 計(jì)算數(shù)值列的描述性統(tǒng)計(jì)
df.describe()

# 計(jì)算某列的總和
df['column_name'].sum()

# 計(jì)算某列的平均值
df['column_name'].mean()

# 計(jì)算某列的最大值
df['column_name'].max()

# 計(jì)算某列中非空值的數(shù)量
df['column_name'].count()

# 計(jì)算列中某個(gè)值的出現(xiàn)次數(shù)
df['column_name'].value_counts()

/ 08 /
導(dǎo)出數(shù)據(jù)

Pandas是一個(gè)用于數(shù)據(jù)操作和分析的強(qiáng)大Python庫。

它提供了將數(shù)據(jù)導(dǎo)出為不同格式的各種功能。

# 以csv格式導(dǎo)出, 不帶行索引導(dǎo)出
df.to_csv('filename.csv', index=False)

# 以Excel格式導(dǎo)出, 不帶行索引導(dǎo)出
data.to_excel('filename.xlsx', index=False)

# 導(dǎo)出Json格式
data.to_json('filename.json', orient='records'

# 以SQL格式導(dǎo)出
data.to_sql('table_name', con=engine, if_exists='replace', index=False)

萬水千山總是情,點(diǎn)個(gè) ?? 行不行

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約