目的:读取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. 超简单Mac安装Tomcat服务器

    超简单Mac安装Tomcat服务器 1.首先下载tomcat 下载连接 2. 解压并改名 3.把Tomcat复制到系统中的资源库或者Library 4.打开shell,进入Tomcat下面的bin目录 ...

  2. 学习测试框架Mocha

    学习测试框架Mocha 注意:是参考阮老师的文章来学的.虽然阮老师有讲解,但是觉得自己敲一遍,然后记录一遍效果会更好点.俗话说,好记性不如烂笔头. Mocha 是javascript测试框架之一,可以 ...

  3. AI 线性代数

    1.标量.向量.矩阵和张量 1)标量(scalar),一个数,例如自然数和实数. 2)向量(vector),一列有序数.可以看作只有一列的矩阵. 3)矩阵(matrix),二维数组.转置(transp ...

  4. node.js 基础二 开启服务器监听

    1.server.js 2.监听 一 server.js 二 监听 运行server.js后,浏览器打开:http://localhost:8888/ //====================== ...

  5. python inspect.stack() 的简单使用

    1. #python # -*- encoding: utf-8 -*- #获取函数的名字 import inspect def debug(): callnamer = inspect.stack( ...

  6. Windows下jupyter notebook 修改打开的浏览器

    1. 打开cmd,输入jupyter notebook --generate-config 2. 根据返回的路径打开 C:\Users\Administrator\.jupyter\jupyter_n ...

  7. LOJ2540 PKUWC2018 随机算法 状压DP

    传送门 两种$DP$: ①$f_{i,j}$表示前$i$次选择,最大独立集为$j$时达到最大独立集的方案总数,转移:$a.f_{i,j}+=f_{i+1,j+2^k}$(保证$k$加入后符合条件):$ ...

  8. R绘图 第七篇:绘制条形图(ggplot2)

    使用geom_bar()函数绘制条形图,条形图的高度通常表示两种情况之一:每组中的数据的个数,或数据框中列的值,高度表示的含义是由geom_bar()函数的参数stat决定的,stat在geom_ba ...

  9. Mac 启动 ssh 服务

    Mac 本身有 ssh,只是没有默认开启,需要手动开启. 启动 sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist 关闭 su ...

  10. Webpack 2 视频教程 005 - Webpack 编译输出日志

    原文发表于我的技术博客 这是我免费发布的高质量超清「Webpack 2 视频教程」. Webpack 作为目前前端开发必备的框架,Webpack 发布了 2.0 版本,此视频就是基于 2.0 的版本讲 ...