最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python DataFrame實(shí)現(xiàn)固定周期內(nèi)統(tǒng)計(jì)每列的非零值

 更新時(shí)間:2024年09月12日 07:37:09   作者:南洲.  
在數(shù)據(jù)處理中,使用DataFrame統(tǒng)計(jì)固定周期內(nèi)每列的非零值數(shù)量是一種常見需求,通過將數(shù)據(jù)分組并使用計(jì)數(shù)函數(shù),可以方便地實(shí)現(xiàn)此目標(biāo),具體方法包括首先計(jì)算每列的0值個(gè)數(shù),然后通過總數(shù)減去0值個(gè)數(shù)得到非零值的數(shù)量

DataFrame實(shí)現(xiàn)固定周期內(nèi)統(tǒng)計(jì)每列的非零值

1、概述

最近做一個(gè)數(shù)值統(tǒng)計(jì),統(tǒng)計(jì)固定周期內(nèi)(比如100行統(tǒng)一次)每列的非零值,實(shí)現(xiàn)不難,先統(tǒng)計(jì)0值個(gè)數(shù),再計(jì)算非零值個(gè)數(shù),主要是有些關(guān)于dataframe的操作技巧可以作為以后的參考。

data.csv文件數(shù)據(jù)示例格式如下:

想要得到的結(jié)果為:

2、代碼

import pandas as pd

def non_zeros_count(df):
    s = 0
    calc_interval = 5   # 統(tǒng)計(jì)周期數(shù)
    new_columns = []
    for i in range(len(df.columns)):
        new_columns.append(df.columns[i]+'_non_zero_count') # 重新組織列名
    non_zeros_count = pd.DataFrame(columns=df.columns[1:])  # 新建dataframe 儲(chǔ)存最后統(tǒng)計(jì)結(jié)果(沒有計(jì)算第一列“時(shí)間”)

    # 對(duì)所有數(shù)據(jù)按照每 “calc_interval” 計(jì)算每個(gè)字段中的非0個(gè)數(shù)
    while s + calc_interval <= df.shape[0]:
        data_piece = df.iloc[s:s + calc_interval, 1:]
        count_zero = data_piece.apply(lambda x: x.value_counts().get(0.0, 0.0))  # 0值個(gè)數(shù)
        # np.count_nonzero(data_piece,axis = 0)   #這種方法也可以得到,但是得到的是類型是ndarray
        non_zeros = calc_interval - count_zero  # 非零值個(gè)數(shù)(每列計(jì)算周期內(nèi)的總數(shù)-每列的0值數(shù))
        non_zeros_to_frame = non_zeros.to_frame()  # series轉(zhuǎn)dataframe
        non_zeros_transp = pd.DataFrame(non_zeros_to_frame.values.T,
                                        index=non_zeros_to_frame.columns,
                                        columns=non_zeros_to_frame.index)  # 取轉(zhuǎn)置
        non_zeros_count = pd.concat([non_zeros_count, non_zeros_transp])  # 數(shù)據(jù)合并
        s = s + calc_interval

    non_zeros_count.index = [i for i in range(non_zeros_count.shape[0])]
    # non_zeros_count.values.reshape(30,24) # dataframe
    non_zeros_count.columns = new_columns[1:] # 重新修改列名
    non_zeros_count.to_csv('./non_zeros_count.csv',encoding= 'utf-8')

if __name__=='__main__':

    sv_data = pd.read_csv('data.csv',encoding='utf-8')
    non_zeros_count(sv_data)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 對(duì)python 中re.sub,replace(),strip()的區(qū)別詳解

    對(duì)python 中re.sub,replace(),strip()的區(qū)別詳解

    今天小編就為大家分享一篇對(duì)python 中re.sub,replace(),strip()的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng)

    使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng)

    這篇文章主要介紹了使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng),代碼大致分為五個(gè)函數(shù)組成,具體內(nèi)容詳情本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2019-11-11
  • python中常用的各種數(shù)據(jù)庫操作模塊和連接實(shí)例

    python中常用的各種數(shù)據(jù)庫操作模塊和連接實(shí)例

    這篇文章主要介紹了python中常用的各種數(shù)據(jù)庫操作模塊和連接實(shí)例,包括sqlite3、oracle、mysql、excel,需要的朋友可以參考下
    2014-05-05
  • Python 獲取div標(biāo)簽中的文字實(shí)例

    Python 獲取div標(biāo)簽中的文字實(shí)例

    今天小編就為大家分享一篇Python 獲取div標(biāo)簽中的文字實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python+Turtle制作海龜迷宮小游戲

    Python+Turtle制作海龜迷宮小游戲

    這篇文章主要是帶大家寫一個(gè)利用Turtle庫制作的一款海龜闖關(guān)的三大迷宮,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,感興趣的可以了解一下
    2022-04-04
  • 圖像檢索之基于vlfeat實(shí)現(xiàn)SIFT特征

    圖像檢索之基于vlfeat實(shí)現(xiàn)SIFT特征

    SIFT特征的講解已經(jīng)很多了,本文就借助vlfeat對(duì)SIFT特征的提取過程做一個(gè)總結(jié)。接下來通過本文給大家介紹圖像檢索之基于vlfeat實(shí)現(xiàn)SIFT,感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • pytorch torchvision.ImageFolder的用法介紹

    pytorch torchvision.ImageFolder的用法介紹

    今天小編就為大家分享一篇pytorch torchvision.ImageFolder的用法介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python中解決浮點(diǎn)數(shù)精度問題的常見方法

    Python中解決浮點(diǎn)數(shù)精度問題的常見方法

    在Python中,浮點(diǎn)數(shù)是以雙精度(64位)存儲(chǔ)的,這種表示方式雖然能夠表示非常廣泛的數(shù)值范圍,但并不能精確表示所有的小數(shù),下面我們來看看Python是如何解決浮點(diǎn)數(shù)精度問題的吧
    2025-08-08
  • PyTorch簡單手寫數(shù)字識(shí)別的實(shí)現(xiàn)過程

    PyTorch簡單手寫數(shù)字識(shí)別的實(shí)現(xiàn)過程

    Pytorch是熱門的深度學(xué)習(xí)框架之一,通過經(jīng)典的MNIST數(shù)據(jù)集進(jìn)行快速的pytorch入門,這篇文章主要給大家介紹了關(guān)于PyTorch簡單手寫數(shù)字識(shí)別的相關(guān)資料,需要的朋友可以參考下
    2021-11-11
  • Python ZipFile模塊詳解

    Python ZipFile模塊詳解

    Python壓縮和解壓縮的使用方法詳解,zipfile里有兩個(gè)非常重要的class, 分別是ZipFile和ZipInfo。
    2013-11-11

最新評(píng)論

鄱阳县| 共和县| 荥经县| 义乌市| 四川省| 改则县| 伊宁市| 台北市| 常熟市| 伊通| 霍城县| 宝鸡市| 藁城市| 且末县| 钦州市| 吐鲁番市| 凌源市| 新绛县| 永平县| 廉江市| 广汉市| 句容市| 鄂伦春自治旗| 垦利县| 明溪县| 吴忠市| 池州市| 南郑县| 渝北区| 淅川县| 司法| 新泰市| 郓城县| 永寿县| 文山县| 沁源县| 漯河市| 梁河县| 油尖旺区| 海门市| 永新县|