溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何用Numpy分析各類用戶占比

發(fā)布時(shí)間:2021-12-27 10:49:36 來源:億速云 閱讀:151 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“如何用Numpy分析各類用戶占比”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“如何用Numpy分析各類用戶占比”吧!

分析目標(biāo)

觀察上次的數(shù)據(jù),數(shù)據(jù)中有的數(shù)據(jù)有會(huì)員與非會(huì)員兩種用戶類別。
這次我們主要分析一下兩種類別用戶在數(shù)據(jù)中占比。

數(shù)據(jù)讀取與數(shù)據(jù)清洗

根據(jù)流程示意圖我們主要遵循下面幾個(gè)步驟:

如何用Numpy分析各類用戶占比

此處代碼為:

# 數(shù)據(jù)讀取,數(shù)據(jù)清洗
def read_clean_data():
    clndata_arr_list = []
    for data_filename in data_filenames:
        file = os.path.join(data_path, data_filename)
        data_arr = np.loadtxt(file, skiprows=1, delimiter=',', dtype=bytes).astype(str)
        cln_arr = np.core.defchararray.replace(data_arr[:, -1], '"', '')
        cln_arr = cln_arr.reshape(-1,1)
        clndata_arr_list.append(cln_arr)
    year_cln_arr = np.concatenate(clndata_arr_list)
    return year_cln_arr

這里需要注意兩點(diǎn):

  • 因?yàn)閿?shù)據(jù)較大,我們沒有數(shù)據(jù)文件具體數(shù)據(jù)量,所以在使用numpy.reshape時(shí)我們可以使用numpy.reshape(-1,1)這樣numpy可以使用統(tǒng)計(jì)后的具體數(shù)值替換-1。

  • 我們對(duì)數(shù)據(jù)的需求不再是獲取時(shí)間的平均值,只需獲取數(shù)據(jù)最后一列并使用concatenate方法堆疊到一起以便下一步處理。

數(shù)據(jù)分析

根據(jù)這次的分析目標(biāo),我們?nèi)〕鲎詈笠涣?code>Member type。

在上一步我們已經(jīng)獲取了全部的數(shù)值,在本部只需篩選統(tǒng)計(jì)出會(huì)員與非會(huì)員的數(shù)值就可以了。

我們可以先看下完成后的這部分代碼:

# 數(shù)據(jù)分析
def mean_data(year_cln_arr):
    member = year_cln_arr[year_cln_arr == 'Member'].shape[0]
    casual = year_cln_arr[year_cln_arr == 'Casual'].shape[0]
    users = [member,casual]
    print(users)
    return users

同樣,這里使用numpy.shape獲取用戶分類的具體數(shù)據(jù)。

結(jié)果展示

生成的餅圖:

如何用Numpy分析各類用戶占比

下面是生成餅圖的代碼:

# 結(jié)果展示
plt.figure()
    plt.pie(users, labels=['Member', 'Casual'], autopct='%.2f%%', shadow=True, explode=(0.05, 0))
    plt.axis('equal')
    plt.tight_layout()
    plt.savefig(os.path.join(output_path, './piechart.png'))
    plt.show()

到此,相信大家對(duì)“如何用Numpy分析各類用戶占比”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI