目的:读取csv文件内容,把0和1的数据串取出来,统计出现1的连续次数和各次数出现的频率次数

先读取csv文件内容:


import csv
def csv_read(file):
list = []
csv_reader = csv.reader(file)
for id, data, *args in csv_reader:
#跳过表头
if id == " ":
continue
#print(id, data)
list.append(data)
return list

再写处理0和1的方法


#统计连续0和1出现的个数

#函数功能:对连续出现的1的个数进行统计,返回一个连续次数列表
def sum_times(list):
total_list = []
#n统计出现次数,m表示当前处理个数
n = 0
m = 0
for w in list:
m += 1
if int(w) == 1:
n += 1
elif int(w) == 0:
if n > 0:
#连续次数大于2则打印位置
if n > 2:
print("连续时长:", n,"| 行数:", m-n)
total_list.append(n)
n = 0
#如果最后一个为1则自动计数
if m == len(list):
if n > 0:
total_list.append(n)
n = 0 print("\nsum_times函数打印连续次数列表:\n", total_list)
return total_list #函数功能:对出现频率列表进行统计
def sum_tocal(list):
list_total = [0, 0, 0, 0, 0]
for n in list:
if n == 1:
list_total[0] += 1
elif n == 2:
list_total[1] += 1
elif n == 3 or n == 4:
list_total[2] += 1
elif n == 5 or n == 6:
list_total[3] += 1
elif 6 < n <= 12:
list_total[4] += 1
return list_total

最后依次调用执行


import readcsv, tong_ji_ge_shu
#统计出现各时长频率的次数 file = open("d://vis_911_3000.csv")
#file = open("d://ts_ctime_12.csv") #从csv中读取数据
csvlist = readcsv.csv_read(file)
file.close() #记录连续出现的小时数
list_pinlv = tong_ji_ge_shu.sum_times(csvlist) #统计各时长出现的个数
list_final = tong_ji_ge_shu.sum_tocal(list_pinlv) print() #空行
print(list_final) #输入各时长个数的统计列表
#print("1次:" + str(list_final[0]), " | 2次:" + str(list_final[1]), " | 3-4次:" + str(list_final[2]))
print("[1次,2次,3-4次,5-6次,7-12次]")

												

python之小应用:读取csv文件并处理01数据串的更多相关文章

  1. C++ 把数组数据存入 CSV 文件,以及读取 CSV 文件的数据

    1. CSV-百度百科 2. 代码 #pragma once //Microsoft Visual Studio 2015 Enterprise #include<iostream> #i ...

  2. Python 读取csv文件到excel

    朋友问我如何通过python把csv格式的文件另存为xls文件,自己想了想通过读取csv文件然后再保存到xls文件中即可,也许还有其他简单的方法,但这里也为了练习python语法及其他知识,所以采用了 ...

  3. python 使用read_csv读取 CSV 文件时报错

    读取csv文件时报错 df = pd.read_csv('c:/Users/NUC/Desktop/成绩.csv' ) Traceback (most recent call last):  File ...

  4. python之模块csv之 读取CSV文件(reader和DictReader2个方法)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #读取CSV文件(reader和DictReader2个方法) import csv #csv文件,是一种常用 ...

  5. Python读取 csv文件中文乱码处理

    需求:按行解析读取csv文件存入关系型数据库——主要是中文字体解析:遇到的问题:直接解析出来的数据为list形式,而且编码格式为unicode;解决问题:前提了解: 中文编码的规则 —— GB2312 ...

  6. Python读取CSV文件,报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa7 in position 727: illegal multibyte sequence

    Python读取CSV文件,报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa7 in position 727: illegal mul ...

  7. [Python Study Notes]pd.read_csv()函数读取csv文件绘图

    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...

  8. python3+Appium自动化11-data数据封装之python读取csv文件

    使用背景 实际项目中,我们的测试数据可能存储在一个数据文件中,如txt.excel.csv文件类型.我们可以封装一些方法来读取文件中的数据来实现数据驱动 enumerate()简介 enumerate ...

  9. Selenium(Python) ddt读取CSV文件数据驱动

    import csvimport unittestfrom time import sleep from ddt import ddt, data, unpackfrom selenium impor ...

随机推荐

  1. three.js - 动画 图形统计帧频 dat.GUI

    运行一把: 代码解释: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  2. USB协议枚举过程详解

    一 枚举过程之文字描述 ?主机集线器监视着每个端口的信号电压,当有新设备接入时便可觉察.(集线器端口的两根信号线的每一根都有15kΩ的下拉电阻,而每一个设备在D+都有一个1.5kΩ的上拉电阻.当用US ...

  3. 05-Mirrorgate数据库信息

    1.登录数据库 [root@node1 ~]# mongo localhost: > show dbs; admin .000GB dashboarddb .001GB local .000GB ...

  4. CF293B Distinct Paths 搜索

    传送门 首先数据范围很假 当\(N + M - 1 > K\)的时候就无解 所以对于所有要计算的情况,\(N + M \leq 11\) 超级小是吧,考虑搜索 对于每一个格子试填一个数 对于任意 ...

  5. React-理解Redux

    Redux是什么? 是专于状态管理的库 专于状态管理和react解耦 单一状态,单项数据流 核心概念 store state action reducer Redux工作流 react 要改变stor ...

  6. (转) Ubuntu 更改文件夹及子文件夹权限

    Linux系统下如何修改文档及文件夹(含子文件夹)权限,我们来看一下. 一 介绍: 可以使用命令chmod来为文件或目录赋予权限.Linux/Unix 的档案存取权限分为三级 : 档案拥有者.群组.其 ...

  7. Ionic App ActionSheet布局问题

    使用 $ionicActionSheet的时候界面不像Ihpnoe手机那样显示的整齐,但是在电脑浏览器里面却是好的,原因还是Ionic自带css的问题,网上的答案是ionic.min.css/ioni ...

  8. 随机森林和GBDT的几个核心问题

    随机森林random forest的pro和con是什么?优势是accuracy高,但缺点是速度会降低,并且解释性interpretability会差很多,也会有overfitting的现象. 为什么 ...

  9. 案例学python——案例一:抓图

    最近项目不那么紧张,有时间来研究一下Python,先前断断续续的自学了一段时间,有些浅基础.刚好在码云上看到比较适合的案例,跟着案例再往前走一波. 案例一:爬虫抓图 开发工具:PyCharm    脚 ...

  10. 如何用chrome查看post get及返回的数据

    chrome浏览器按下F12打开开发者工具 点击Network,找到过滤器 筛选XHR,Method那一列会显示POST GET: