TQC+ 網頁資料擷取與分析_Python_303_果菜批發市場拍賣行情

文、意如

1. 題目說明:

請開啟PYD03.py檔案,依下列題意進行作答,使輸出值符合題意要求。作答完成請另存新檔為PYA03.py再進行評分。

2. 設計說明:
  1. 某日各果菜批發市場之西瓜與香瓜之拍賣行情價量表如下:
 西瓜價西瓜量香瓜價香瓜量
三重區920367413.218894
台中市11.718078512.354894
台北一10.112780214.718563
台北二11.82860414.921963
台東市13.260013.1900
板橋區6.9380719.63555
高雄市12.13566010.69005
嘉義市12150001312000
鳳山區11.7487709.114370
豐原區9.84610011.898980

  1. 上述的資料已在PYD03.py中,請撰寫一程式建立資料結構,其中直行標題為項目(西瓜價、西瓜量、香瓜價、香瓜價),橫列標題為交易市場;接著完成下列項目:
    a. 輸出如拍賣行情價量表
    b. 以西瓜價遞減排序後,輸出各市場的西瓜價
    c. 計算台北一市場西瓜/香瓜價量的行情並輸出
    d. 將「三重市」改為「三重區」、「香瓜價」改為「洋香瓜價」、「香瓜量」改為「洋香瓜量」,重新輸出整個表格
3. 輸入輸出:

輸入說明

輸出說明

分別輸出下列4段資料:
a. 拍賣行情價量表
b. 以西瓜價遞減排序後,各市場的西瓜價
c. 台北一市場西瓜/香瓜價量的行情
d. 將「三重市」改為「三重區」、「香瓜價」改為「洋香瓜價」、「香瓜量」改為「洋香瓜量」,重新輸出整個表格


範例輸入

範例輸出

題目提示:

# 載入 pandas 模組縮寫為 pd
import ___ as ___

# 建構資料
___ = [[9, 203674, 13.2, 18894],
       [11.7, 180785, 12.3, 54894],
       [10.1, 127802, 14.7, 18563],
       [11.8, 28604, 14.9, 21963],
       [13.2, 600, 13.1, 900],
       [6.9, 38071, 9.6, 3555],
       [12.1, 35660, 10.6, 9005],
       [12, 15000, 13, 12000],
       [11.7, 48770, 9.1, 14370],
       [9.84, 6100, 11.89, 8980]]
___ = ["三重市", "台中市", "台北一", "台北二", "台東市", "板橋區", "高雄市", "嘉義市", "鳳山區", "豐原區"]
___ = ["西瓜價", "西瓜量", "香瓜價", "香瓜量"]

df = pd.___(___, columns=___,  index=___)
print('西瓜與香瓜之拍賣行情價量表')
print(df)
print()  # 使用print分隔


df1 = df.___(by="___", ascending=___)
print('以西瓜價遞減排序')
print(df1['西瓜價'])
print()  # 使用print分隔

# 計算台北一市場西瓜/香瓜價量的行情並輸出
df.___["___"]
print('台北一市場的行情')
print(df.___["___"])
print()  # 使用print分隔

indexs[0] = "三重區"
df.index = ____
____[____] = "洋香瓜價"
____[____] = "洋香瓜量"
df.____ = ____
print('全體市場行情')
print(df)

參考答案:

import pandas as pd

price = [[9, 203674, 13.2, 18894],
       [11.7, 180785, 12.3, 54894],
       [10.1, 127802, 14.7, 18563],
       [11.8, 28604, 14.9, 21963],
       [13.2, 600, 13.1, 900],
       [6.9, 38071, 9.6, 3555],
       [12.1, 35660, 10.6, 9005],
       [12, 15000, 13, 12000],
       [11.7, 48770, 9.1, 14370],
       [9.84, 6100, 11.89, 8980]]
sec = ["三重市", "台中市", "台北一", "台北二", "台東市", "板橋區", "高雄市", "嘉義市", "鳳山區", "豐原區"]
item = ["西瓜價", "西瓜量", "香瓜價", "香瓜量"]

# 建立 DataFrame
df = pd.DataFrame(price, columns=item,  index=sec)
print('西瓜與香瓜之拍賣行情價量表')

# 印出拍賣行情價量表
print(df)
print()

# 以西瓜價遞減排序 DataFrame
df1 = df.sort_values(by="西瓜價", ascending=False)
print('以西瓜價遞減排序')
print(df1['西瓜價'])
print()

# 印出台北一市場的行情
print('台北一市場的行情')
print(df.loc["台北一"])
print()

# 重新命名行和列的標籤
df = df.rename(index = {"三重市":"三重區"},columns = {"香瓜價":"洋香瓜價", "香瓜量":"洋香瓜量"})
print('全體市場行情')
print(df)

參考

 

 

Yiru@Studio - 關於我 - 意如