問題
(1) 請刪除最後一列為缺失值的行,並求所有在杭州發貨的商品單價均值。
(2) 商品標題帶有「嘉興」但發貨地卻不在嘉興的商品有多少條記錄?
(3) 請按照分位數將**分為「高、較高、中、較低、低」5 個類別,再將 類別結果插入到標題一列之後,最後對類別列進行降序排序。
(4) 付款人數一欄有缺失值嗎?若有則請利用上一問的分類結果對這些缺失 值進行合理估計並填充。
(5) 請將資料後四列合併為如下格式的 series:商品發貨地為 ××,店鋪為 ××,共計 ×× 人付款,單價為 ××。
(6) 請將上一問中的結果恢復成原來的四列。
in [1]
:import pandas as pd
import numpy as np
in [2]
:df_duanwu = pd.read_csv(
'./練習/端午粽子資料.csv'
) df_duanwu.info(
)#(1) 請刪除最後一列為缺失值的行,並求所有在杭州發貨的商品單價均值。
in [3]
:df_zongzi = df_duanwu.copy(
).dropna(axis=
0,subset=
['發貨位址 '])
pd.to_numeric(df_01[df_zongzi[
'發貨位址 '].
str.contains(
'杭州')]
[' **'
],errors=
'coerce'
).mean().
round
(decimals=2)
#(2) 商品標題帶有「嘉興」但發貨地卻不在嘉興的商品有多少條記錄?
in [4]
:df_zongzi[
(df_01[
'標題'].
str.contains(
'嘉興'))
&(~df_zongzi[
'發貨位址 '].
str.contains(
'嘉興'))
].shape[0]
#(3) 請按照分位數將**分為「高、較高、中、較低、低」5 個類別,再將 類別結果插入到標題一列之後,最後對類別列進行降序排序。
in [5]
:df_zongzi.loc[:,
' **'
]= pd.to_numeric(df_zongzi.loc[:,
' **'
],errors=
'coerce'
) q =
[df_zongzi.loc[:,
' **'
].quantile(i)
for i in[0
,.2,.4
,.6,.8
,1]]
;q[-1]
+=1df_zongzi.loc[:,
'**類別'
]= pd.cut(df_zongzi[
' **'
],q,right=
false
,labels=
['低'
,'較低'
,'中'
,'較高'
,'高'])
in [6]
:df_zongzi.loc[:,
['標題'
,'**類別'
,' **'
,'付款人數'
,'店鋪'
,'發貨位址 ']]
.sort_values(by=
'**類別'
)#(4) 付款人數一欄有缺失值嗎?若有則請利用上一問的分類結果對這些缺失 值進行合理估計並填充。
in [7]
#非缺失值有 4329/4400
df_o4 = df_zogzi.copy(
) df_04.info(
)#用同**類別的付款人數均值(不考慮100餘條類似1.0萬+、5000+等較大數值。)
in [8]
:grouped = df_04.groupby(
'**類別'
)for name,group in grouped:
df_04.loc[group.index,
'付款人數']=
str(
int(pd.to_numeric(group[
'付款人數'
].astype(
str)
.str[:
-3],errors=
'coerce'
).mean())
)+'人付款'
df_04.info(
)#(5) 請將資料後四列合併為如下格式的 series:商品發貨地為 ××,店鋪為 ××,共計 ×× 人付款,單價為 ××。
in [9]
:df_05 = df_04.astype(
str)
df_str3 =
('商品發貨地為'
+df_05[
'發貨位址 ']+
',店鋪為'
+df_05[
'店鋪']+
',共計'
+df_05[
'付款人數']+
',單價為'
+df_05[
' **']+
'。')
df_str3.head(
)#(6) 請將上一問中的結果恢復成原來的四列。
in [10]
:df_res = df_str3.
str.extract(r'商品發貨地為(?p《發貨位址》[\w]+\s*[\w]+),店鋪為(?p《店鋪》[\w]+),共計(?p《付款人數》[\w]+\+*[\w]+),單價為(?p《**》[\d]+\.*[\d]+)。'
) df_res.head(
)
pandas學習 Task05合併
問題二 merge ordered和merge asof的作用是什麼?和merge是什麼關係?merge ordered 根據官方說明,適用與帶時間序列的資料,自帶ffill bfill 引數,可以方便填充 merge asof 模糊匹配版的merge 問題三 請構造乙個多級索引與多級索引合併的例子...
TASK05結構陣列
結構陣列與單元陣列的轉換 單元陣列的處理 實戰演練 總結思考 a.b c a為結構陣列名,b為欄位名,c為此欄位的內容 如果使用結構陣列函式建立,則書寫格式為 array name struct field1 val1,field2 val2,array name為結構陣列名,field為欄位名,v...
天池語義分割task05
乙個成熟合格的深度學習訓練流程至少具備以下功能 在訓練集上進行訓練,並在驗證集上進行驗證 模型可以儲存最優的權重,並讀取權重 記錄下訓練集和驗證集的精度,便於調參。一 學習目標 理解驗證集的作用,並使用訓練集和驗證集完成訓練 學會使用 pytorch 環境下的模型讀取和載入,並了解調參流程 二 構造...