中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么使用pandas分析excel數據

發布時間:2022-01-26 15:06:45 來源:億速云 閱讀:141 作者:zzz 欄目:開發技術

本篇內容主要講解“Python中怎么使用pandas分析excel數據”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python中怎么使用pandas分析excel數據”吧!

1.安裝

使用pip進行安裝。

pip3 install pandas

導入pandas:

import pandas as pd

下文使用pd進行pandas的操作。

2.讀寫文件

讀取文件,比如excel,csv文件

# df是pandas.core.frame.DataFrame類型
df = pd.read_excel('./data/2020-suv.xlsx')

# read_csv可以指定分割符,編碼方式等
df2 = pd.read_csv('./data/2020-suv.csv')

寫入文件:

df.to_excel('./data/2020-suv-new.xlsx')
df.to_csv('./data/2020-suv-new.csv')

3.數據操作

all_cols = df.columns
print(all_cols)

# 輸出,df.columns并非list類型
Index(['銷量排名', '車系', '官方價', '從屬品牌', '1-12月銷量'], dtype='object')

# df.columns并非list類型,可以轉化list
cols = list(df.columns)

獲取列數據

col_data = df[u'車系']
mul_col_data = df[ [u'車系', u'1-12月銷量'] ]

獲取行數據

row_data = df.iloc[row_index]

獲取所有行數據

all_data = df.values

切片獲取多行數據

mul_row_data = df.iloc[2:4]

獲取單元個數據

cell_data = df.iloc[row_index][col_index]

4.數據篩選

Excel數據篩選比較實用,用pandas同樣可以,并且篩選代碼保存后,下次可以直接使用。

某個字段包含指定值

# 包含一個值,na表示是否需要填充,case表示是否區分大小寫,更強大的是contains還支持正則表達式
sub_df = df[ df[col_name].str.contains('key1', na=False, case=False) ]

# 包含多個值,多次調用即可
sub_df1 = df[ df[col_name].str.contains('key1', na=False, case=False) ]
sub_df2 = sub_df1[ sub_df1[col_name].str.contains('key2', na=False, case=False) ]

# 包含多個值(或)
sub_df = df[ df[col_name].str.contains('key1|key2|key3', na=False, case=False) ]

# 不包含,也就是非的過濾
sub_df = df[ ~df[col_name].str.contains('key1', na=False, case=False) ]

上述操作,都假設字段類型是字符串類型,不然會拋異常。可以通過以下的方法,可以判斷字段是否是字符類型:

pd.api.types.is_string_dtype(df[u'車系'])

# 其他類型也有類似的函數,可以用dir查看有哪些類型判斷
print(dir(pd.api.types))

# 可以通過dtypes查看字段的類型
pd.dtypes
pd[u'1-12月銷量'].dtypes

條件過濾

# 大于
df[ df['1-12月銷量'] > 50000 ] .values

# 相等
df[ df['1-12月銷量'] == 50000 ] .values

5.數據寫入

添加一行數據:

# 插在最后,row_datas是list
df.loc[len(df.index)] = row_datas

插入一列數據

# 在指定列前面插上一列數據
df.insert( col_index, col_name, col_datas, True)

更新某個單元值

df.iloc[row][col] = u'new-data'

6.數據刪除

刪除一列

df2 = df.drop('官方價', axis=1, inplace=False)
print(df2)

# 輸出
銷量排名           車系   從屬品牌  1-12月銷量
0       1         哈弗H6     哈弗   376864
1       2       本田CR-V     本田   249983
2       3           博越   吉利汽車   240811
3       4          途觀L     大眾   178574
4       5  長安CS75 PLUS   長安汽車   266824
..    ...          ...    ...      ...
282   283      北汽新能源EX  北汽新能源      879
283   284        奔騰X40     奔騰    20412
284   285    標致2008新能源     標致       37
285   286       獵豹CS10   獵豹汽車       14
286   287         森雅R7     一汽        1

[287 rows x 4 columns]

刪除一行

df3 = df.drop(2, axis=0, inplace=False)
print(df3)

# 輸出
     銷量排名           車系           官方價   從屬品牌  1-12月銷量
0       1         哈弗H6   9.80-15.49萬     哈弗   376864
1       2       本田CR-V  16.98-27.68萬     本田   249983
3       4          途觀L  21.58-28.58萬     大眾   178574
4       5  長安CS75 PLUS  10.69-15.49萬   長安汽車   266824
5       6       本田XR-V  12.79-17.59萬     本田   168272
..    ...          ...           ...    ...      ...
282   283      北汽新能源EX  18.39-20.29萬  北汽新能源      879
283   284        奔騰X40          暫無報價     奔騰    20412
284   285    標致2008新能源  16.60-18.80萬     標致       37
285   286       獵豹CS10   7.98-11.98萬   獵豹汽車       14
286   287         森雅R7   6.69-10.69萬     一汽        1

[286 rows x 5 columns]

到此,相信大家對“Python中怎么使用pandas分析excel數據”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

呼图壁县| 山丹县| 措美县| 张家港市| 长垣县| 湟中县| 土默特右旗| 和林格尔县| 秦皇岛市| 昔阳县| 天峻县| 丹江口市| 黑山县| 南充市| 沙河市| 炉霍县| 永和县| 镇雄县| 泊头市| 黄山市| 驻马店市| 那曲县| 阿瓦提县| 惠安县| 盐边县| 镇坪县| 陇南市| 柏乡县| 乌鲁木齐县| 泰顺县| 大名县| 辽中县| 南开区| 连南| 定西市| 炉霍县| 雅安市| 河间市| 郸城县| 新泰市| 容城县|