Pandas學習之綜合練習

2021-10-07 16:40:35 字數 4779 閱讀 3545

1.刪除最後一列為缺失值的行,並求所有在杭州發貨的商品單價均值

刪除某列為缺失值的行,有兩種方法:

第一種方法

利用notna()函式,篩選出該列不為空值的行,則相當於把該列為空值的行刪除掉了

import numpy as np

import pandas as pd

df = pd.read_csv(

"e:/data/zongzi.csv"

,names=

['a'

,'b'

,'c'

,'d'

,'e'])

.convert_dtypes(

)df.head(

)

ab

cde0

標題**

付款人數

店鋪發貨位址

1五芳齋粽子禮盒 心悅+18只裝鹹鴨蛋組合端午節禮品**嘉興肉粽子

1296人付款

五芳齋官方***

浙江 嘉興

2北京稻香村端午粽子手工豆沙粽220g*2袋散裝豆沙粽香甜軟糯豆沙粽

448人付款

天貓超市上海3

五芳齋粽子禮盒裝鮮肉鹹蛋黃大肉粽嘉興豆沙甜粽端午**散裝禮品

89.9

100萬+人付款

五芳齋官方***

浙江 嘉興

4稻香私房鮮肉粽蛋黃肉粽嘉興粽子鹹鴨蛋禮盒裝端午節送禮特產**

1381936人付款

稻香村食品***

北京

import numpy as np

import pandas as pd

data = pd.read_csv(

'e:/data/zongzi.csv'

)data.head(

)

標題**

付款人數

店鋪發貨位址

0五芳齋粽子禮盒 心悅+18只裝鹹鴨蛋組合端午節禮品**嘉興肉粽子

1296人付款

五芳齋官方***

浙江 嘉興

1北京稻香村端午粽子手工豆沙粽220g*2袋散裝豆沙粽香甜軟糯豆沙粽

448人付款

天貓超市上海2

五芳齋粽子禮盒裝鮮肉鹹蛋黃大肉粽嘉興豆沙甜粽端午**散裝禮品

89.9

100萬+人付款

五芳齋官方***

浙江 嘉興

3稻香私房鮮肉粽蛋黃肉粽嘉興粽子鹹鴨蛋禮盒裝端午節送禮特產**

1381936人付款

稻香村食品***北京4

嘉興粽子 蛋黃鮮肉粽新鮮大肉粽早餐散裝**浙江特產蜜棗多口味

3.89500+人付款

城城餵食貓

浙江 嘉興

data.info(

)

rangeindex: 4403 entries, 0 to 4402

data columns (total 5 columns):

# column non-null count dtype

--- ------ -------------- -----

0 標題 4403 non-null object

1 ** 4403 non-null object

2 付款人數 4332 non-null object

3 店鋪 4403 non-null object

4 發貨位址 4400 non-null object

dtypes: object(5)

memory usage: 172.1+ kb

data = data[data[

'發貨位址 '

].notna(

)]

data.info(

)#可以看到data的記錄由原來的4403變成了4400,說明有三條空記錄被剔除掉了

int64index: 4400 entries, 0 to 4402

data columns (total 5 columns):

# column non-null count dtype

--- ------ -------------- -----

0 標題 4400 non-null object

1 ** 4400 non-null object

2 付款人數 4329 non-null object

3 店鋪 4400 non-null object

4 發貨位址 4400 non-null object

dtypes: object(5)

memory usage: 206.2+ kb

找出該列為空值的行的index,然後通過drop方法將該行刪除掉。

利用drop方法刪除最後一列有空值的行。

drop方法可以對dataframe物件某項索引值,包括行索引(index,axis = 0)和列索引(columns,axis = 1)

import numpy as np

import pandas as pd

data = pd.read_csv(

'e:/data/zongzi.csv'

)data.head(

)

標題**

付款人數

店鋪發貨位址

0五芳齋粽子禮盒 心悅+18只裝鹹鴨蛋組合端午節禮品**嘉興肉粽子

1296人付款

五芳齋官方***

浙江 嘉興

1北京稻香村端午粽子手工豆沙粽220g*2袋散裝豆沙粽香甜軟糯豆沙粽

448人付款

天貓超市上海2

五芳齋粽子禮盒裝鮮肉鹹蛋黃大肉粽嘉興豆沙甜粽端午**散裝禮品

89.9

100萬+人付款

五芳齋官方***

浙江 嘉興

3稻香私房鮮肉粽蛋黃肉粽嘉興粽子鹹鴨蛋禮盒裝端午節送禮特產**

1381936人付款

稻香村食品***北京4

嘉興粽子 蛋黃鮮肉粽新鮮大肉粽早餐散裝**浙江特產蜜棗多口味

3.89500+人付款

城城餵食貓

浙江 嘉興

data.info(

)#可以看到data是乙個4403行5列的資料

rangeindex: 4403 entries, 0 to 4402

data columns (total 5 columns):

# column non-null count dtype

--- ------ -------------- -----

0 標題 4403 non-null object

1 ** 4403 non-null object

2 付款人數 4332 non-null object

3 店鋪 4403 non-null object

4 發貨位址 4400 non-null object

dtypes: object(5)

memory usage: 172.1+ kb

data[

'發貨位址 '

].isnull(

).value_counts(

)

false    4400

true 3

name: 發貨位址 , dtype: int64

data[

'發貨位址 '

]= data[

'發貨位址 '

].fillna(

'999'

)

index_list = data[

(data[

'發貨位址 ']==

'999')]

.index.tolist(

)index_list

[1847, 2418, 2716]
data = data.drop(index_list,axis=

0)

data.info(

)

int64index: 4400 entries, 0 to 4402

data columns (total 5 columns):

# column non-null count dtype

--- ------ -------------- -----

0 標題 4400 non-null object

1 ** 4400 non-null object

2 付款人數 4329 non-null object

3 店鋪 4400 non-null object

4 發貨位址 4400 non-null object

dtypes: object(5)

memory usage: 206.2+ kb

Pandas 綜合練習

問題 1 請刪除最後一列為缺失值的行,並求所有在杭州發貨的商品單價均值。2 商品標題帶有 嘉興 但發貨地卻不在嘉興的商品有多少條記錄?3 請按照分位數將 分為 高 較高 中 較低 低 5 個類別,再將 類別結果插入到標題一列之後,最後對類別列進行降序排序。4 付款人數一欄有缺失值嗎?若有則請利用上一...

Pandas基礎 綜合練習 Python學習筆記

1 請刪除最後一列為缺失值的行,並求所有在杭州發貨的商品單價均值。2 商品標題帶有 嘉興 但發貨地卻不在嘉興的商品有多少條記錄?3 請按照分位數將 分為 高 較高 中 較低 低 5 個類別,再將 類別結果插入到標題一列之後,最後對類別列進行降序排序。4 付款人數一欄有缺失值嗎?若有則請利用上一問的分...

pandas 公益學習 綜合練習與學習總結

問題 1 哪一次拍賣的中標率首次小於 5 2 按年統計拍賣最低價的下列統計量 最大值 均值 0.75 分位數,要求 顯示在同一張表上。3 將第一列時間列拆分成兩個列,一列為年份 格式為 20 另一列為 月份 英語縮寫 新增到列表作為第一第二列,並將原表第一列刪除,其他列依次向後順延。4 現在將 行索...