精华内容
下载资源
问答
  • 主要介绍了使用python采集Excel表中某一格数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 主要介绍了Python使用Excel数据写入多个sheet,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 众所周知,Python有很对第三方模块,只要熟练应用这些模块即可完成各种任务,在开始采集数据之前需要存在一个目标站点,然后使用Python脚本进行质量数据采集。探测web质量需要用到Python的pycurl模块,它可以获取...

    众所周知,Python有很对第三方模块,只要熟练应用这些模块即可完成各种任务,在开始采集数据之前需要存在一个目标站点,然后使用Python脚本进行质量数据采集。探测web质量需要用到Python的pycurl模块,它可以获取HTTP请求的状态码,DNS解析时间、建立连接时间、传输结束总时间,下载数据包大小,HTTP头部大小、平均下载速度等参数。从这些参数中可以了解web的服务质量如何,然后进行优化等操作。将获取的数据写到Excel表格中,这里使用的是Python的xlsxwrite模块,实现的思路是将获取的数据保存到一个文件里面,然后再去创建一个Excel表,将数据写入到表格中然后绘制图表,以此类推,文件里的数据会追加,之后创建的Excel表会被完全覆盖,当然创建Excel表格的模块会很多,这里不再细说。

    Python脚本编写前的准备:

    下载pycurl模块,直接双击安装即可。

    xlsxwriter使用pip命令安装,此处需要注意环境变量是否配置。

    1、由于pycurl是下载下来直接安装的,这里就不写了,比较简单。

    2、安装xlsxwriter模块(需可连接Internet)

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    3、采集数据的脚本如下:

    # _._ coding:utf-8 _._

    import os,sys

    import pycurl

    import xlsxwriter

    URL="www.baidu.com" #探测目标的url,需要探测哪个目标,这里改哪个即可

    c = pycurl.Curl() #创建一个curl对象

    c.setopt(pycurl.URL, URL) #定义请求的url常量

    c.setopt(pycurl.CONNECTTIMEOUT, 10) #定义请求连接的等待时间

    c.setopt(pycurl.TIMEOUT, 10) #定义请求超时时间

    c.setopt(pycurl.NOPROGRESS, 1) #屏蔽下载进度条

    c.setopt(pycurl.FORBID_REUSE, 1) #完成交互后强制断开连接,不重用

    c.setopt(pycurl.MAXREDIRS, 1) #指定HTTP重定向的最大数为1

    c.setopt(pycurl.DNS_CACHE_TIMEOUT, 30)

    #创建一个文件对象,以’wb’方式打开,用来存储返回的http头部及页面内容

    indexfile = open(os.path.dirname(os.path.realpath(__file__))+"/content.txt","wb")

    c.setopt(pycurl.WRITEHEADER, indexfile) #将返回的http头部定向到indexfile文件

    c.setopt(pycurl.WRITEDATA, indexfile) #将返回的html内容定向到indexfile文件

    c.perform()

    NAMELOOKUP_TIME = c.getinfo(c.NAMELOOKUP_TIME) #获取DNS解析时间

    CONNECT_TIME = c.getinfo(c.CONNECT_TIME) #获取建立连接时间

    TOTAL_TIME = c.getinfo(c.TOTAL_TIME) #获取传输的总时间

    HTTP_CODE = c.getinfo(c.HTTP_CODE) #获取HTTP状态码

    SIZE_DOWNLOAD = c.getinfo(c.SIZE_DOWNLOAD) #获取下载数据包大小

    HEADER_SIZE = c.getinfo(c.HEADER_SIZE) #获取HTTP头部大小

    SPEED_DOWNLOAD=c.getinfo(c.SPEED_DOWNLOAD) #获取平均下载速度

    print u"HTTP状态码: %s" %(HTTP_CODE) #输出状态码

    print u"DNS解析时间: %.2f ms" %(NAMELOOKUP_TIME*1000) #输出DNS解析时间

    print u"建立连接时间: %.2f ms" %(CONNECT_TIME*1000) #输出建立连接时间

    print u"传输结束总时间: %.2f ms" %(TOTAL_TIME*1000) #输出传输结束总时间

    print u"下载数据包大小: %d bytes/s" %(SIZE_DOWNLOAD) #输出下载数据包大小

    print u"HTTP头部大小: %d byte" %(HEADER_SIZE) #输出HTTP头部大小

    print u"平均下载速度: %d bytes/s" %(SPEED_DOWNLOAD) #输出平均下载速度

    indexfile.close() #关闭文件

    c.close() #关闭curl对象

    f = file('chart.txt','a') #打开一个chart.txt文件,以追加的方式

    f.write(str(HTTP_CODE)+','+str(NAMELOOKUP_TIME*1000)+','+str(CONNECT_TIME*1000)+','+str(TOTAL_TIME*1000)+','+str(SIZE_DOWNLOAD/1024)+','+str(HEADER_SIZE)+','+str(SPEED_DOWNLOAD/1024)+'\n') #将上面输出的结果写入到chart.txt文件

    f.close() #关闭chart.txt文件

    workbook = xlsxwriter.Workbook('chart.xlsx') #创建一个chart.xlsx的excel文件

    worksheet = workbook.add_worksheet() #创建一个工作表对象,默认为Sheet1

    chart = workbook.add_chart({'type': 'column'}) #创建一个图表对象

    title = [URL , u' HTTP状态码',u' DNS解析时间',u' 建立连接时间',u' 传输结束时间',u' 下载数据包大小',u' HTTP头部大小',u' 平均下载速度'] #定义数据表头列表

    format=workbook.add_format() #定义format格式对象

    format.set_border(1) #定义format对象单元格边框加粗(1像素)的格式

    format_title=workbook.add_format() #定义format_title格式对象

    format_title.set_border(1) #定义format_title对象单元格边框加粗(1像素)的格式

    format_title.set_bg_color('#00FF00') #定义format_title对象单元格背景颜色为’#cccccc’

    format_title.set_align('center') #定义format_title对象单元格居中对齐的格式

    format_title.set_bold() #定义format_title对象单元格内容加粗的格式

    worksheet.write_row(0, 0,title,format_title) #将title的内容写入到第一行

    f = open('chart.txt','r') #以只读的方式打开chart.txt文件

    line = 1 #定义变量line等于1

    for i in f: #开启for循环读文件

    head = [line] #定义变量head等于line

    lineList = i.split(',') #将字符串转化为列表形式

    lineList = map(lambda i2:int(float(i2.replace("\n", ''))), lineList) #将列表中的最后\n删除,将小数点后面的数字删除,将浮点型转换成整型

    lineList = head + lineList #两个列表相加

    worksheet.write_row(line, 0, lineList, format) #将数据写入到execl表格中

    line += 1

    average = [u'平均值', '=AVERAGE(B2:B' + str((line - 1)) +')', '=AVERAGE(C2:C' + str((line - 1)) +')', '=AVERAGE(D2:D' + str((line - 1)) +')', '=AVERAGE(E2:E' + str((line - 1)) +')', '=AVERAGE(F2:F' + str((line - 1)) +')', '=AVERAGE(G2:G' + str((line - 1)) +')', '=AVERAGE(H2:H' + str((line - 1)) +')'] #求每一列的平均值

    worksheet.write_row(line, 0, average, format) #在最后一行数据下面写入平均值

    f.close() #关闭文件

    def chart_series(cur_row, line): #定义一个函数

    chart.add_series({

    'categories': '=Sheet1!$B$1:$H$1', #将要输出的参数作为图表数据标签(X轴)

    'values': '=Sheet1!$B$'+cur_row+':$H$'+cur_row, #获取B列到H列的数据

    'line': {'color': 'black'}, #线条颜色定义为black

    'name': '=Sheet1!$A'+ cur_row, #引用业务名称为图例项

    })

    for row in range(2, line + 1): #从第二行开始到最后一次取文本中的行的数据系列函数调用

    chart_series(str(row), line)

    chart.set_size({'width':876,'height':287}) #定义图表的宽度及高度

    worksheet.insert_chart(line + 2, 0, chart) #在最后一行数据下面的两行处插入图表

    workbook.close() #关闭execl文档

    4、运行脚本后,会在脚本所在的目录下产生三个文件,两个是txt文本文件,一个是Excel文件,执行脚本后,会显示如下信息:

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    5、当前目录下产生的文件如下:

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    其中,两个txt格式的文件都是为了给Excel做铺垫的,所以可以选择性忽略即可,主要是看Excel中的数据。Excel中的数据如下(以下是执行6次脚本后的显示结果,也就是说探测了6次):

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    ———————— 本文至此结束,感谢阅读 ————————

    展开全文
  • Python操作Excel实现数据收集 1. 事情起源 ​ 疫情期间学校要求每天每个人都得上报自己的体温,每日两次。但是一个月要汇总一次,一张表格要核对自己一个月内填的数据,谁有那时间啊,所以想起了python自动化办公...

    Python操作Excel实现数据收集

    1. 事情起源

    ​ 疫情期间学校要求每天每个人都得上报自己的体温,每日两次。但是一个月要汇总一次,一张表格要核对自己一个月内填的数据,谁有那时间啊,所以想起了python自动化办公好像能办这个事。于是,开始了。。。。。。

    2.选择合适的模块

    1. xlrd模块只能对数据进行读

    2. xlwt模块只能对数据进行写,且不能实现追加填写

    3. xlutils.copy能对数据进行复制,把 xlrd 对象转换成 xlwt 对象,就可以进行追加填写

    4. 以上三个模块只能操作后缀名为xls的excel文件

    5. 通过openpyxl模块可以简单的实现追写功能

    3.先要了解可能用到的方法

    • !````wb1 = openpyxl.load_workbook() 加载一个已有的excel文件
    • wb2 = openpyxl.workbook 新建一个excel文件
    • wb2 = wb2 复制原先的excel文件
    • sn = wb2.sheetnames 获取已加载的excel文件的表格名字集合,返回一个列表
    • sheet = wb2[sn[0]] 打开要操作的表单 sn[0]就是第一张表单
    • sheet.cell(row,column).value = data data为你要添加的数据,此方法不能操作合并单元格,否则会报错
    • 当然也可以用 sheet.cell(row,column).value 来查看 表单(row,column)坐标的数据
    • wb2.save() 括号里放你要保存的地址

    4. 构思

    1. 先从数据源获取你要保存的同学的名字,学号,分别存在两个列表中,最后保存的时候要用

    2. 再复制一个存放数据excel的模板

    3. 创建数据列表 循环遍历来获取 数据源 的数据

    4. 最后循环将列表的数据输出

    5. 保存每次编辑的结果

    6. 完成

    5. 代码实现

    import  openpyxl
    import  os
    
    # 获取学号和姓名列表
    numList = []
    for num in range(1,45):
        if num>=0 and num<= 9:
            numList.append('0'+str(num))	#强制类型转化为str
        else:
            numList.append(str(num))
    
    nameList = []
    namerow = 5
    WB = openpyxl.load_workbook(r"D:\Desk\E_T\04.27~05.20\04.27 19级防控新冠状病毒学生晨午检记录表.xlsx") #随便一张表,记录下姓名
    Names = WB.sheetnames
    WStemp = WB[Names[0]]
    for namerow in range(5,49):
        nameList.append(WStemp.cell(namerow,2).value)    #获取姓名列表
    
    i = 0
    for personNum in range(5,49):   #开始循环获取输入44位同学的数据
    
    
    
        beginRow = 34             #开始行
        overRow = 38            #结束行的后一行
    
        wb1 = openpyxl.load_workbook(r"D:\\DESK\4月- 副本.xlsx")     #先加载源文件  模板
        wb2 = openpyxl.Workbook
        wb2 = wb1
        nameSheets = wb2.sheetnames             #获取wb1的全部表格
        ws = wb2[nameSheets[0]]                 #创建表ws
    
        fileList = os.listdir(r"D:\Desk\E_T\04.27~05.20")
    
    
    
        dataList1 = []
    
        for file in fileList:
            wb3 = openpyxl.load_workbook(r"D:\Desk\E_T\04.27~05.20\\"+file)
            names = wb3.sheetnames
            wstemp = wb3[names[0]]
            dataList1.append(wstemp.cell(personNum,6).value)   #(5,6) 为一天当中第一次 数据的坐标
    
    
    
        dataList2 = []
        for file in fileList:
            wb3 = openpyxl.load_workbook(r"D:\Desk\E_T\04.27~05.20\\"+file)
            names = wb3.sheetnames
            wstemp = wb3[names[0]]
            dataList2.append(wstemp.cell(personNum,9).value)    #(5,9) 为一天当中第一次 数据的坐标
    
    
        count =0
        for row in range(beginRow,overRow):
            ws.cell(row,3).value = dataList1[count]
            ws.cell(row,4).value = dataList2[count]
            count = count+1
    
    
    
        for row in range(beginRow,overRow):
            ws.cell(row,5).value = '否'
            ws.cell(row,6).value = '否'
    
        wb2.save(r"D:\Desk\全班报表\\"+str(numList[i])+str(nameList[i])+".xlsx")
        print("写入第"+str(numList[i])+"完成且成功")
        i=i+1
    
    
    

    这里实现的是四天的,30天也一样,需要找好数据输入的位置

    展开全文
  • 众所周知,Python有很对第三方模块,只要熟练应用这些模块即可完成各种任务,在开始采集数据之前需要存在一个目标站点,然后使用Python脚本进行质量数据采集。探测web质量需要用到Python的pycurl模块,它可以获取...

    众所周知,Python有很对第三方模块,只要熟练应用这些模块即可完成各种任务,在开始采集数据之前需要存在一个目标站点,然后使用Python脚本进行质量数据采集。探测web质量需要用到Python的pycurl模块,它可以获取HTTP请求的状态码,DNS解析时间、建立连接时间、传输结束总时间,下载数据包大小,HTTP头部大小、平均下载速度等参数。从这些参数中可以了解web的服务质量如何,然后进行优化等操作。将获取的数据写到Excel表格中,这里使用的是Python的xlsxwrite模块,实现的思路是将获取的数据保存到一个文件里面,然后再去创建一个Excel表,将数据写入到表格中然后绘制图表,以此类推,文件里的数据会追加,之后创建的Excel表会被完全覆盖,当然创建Excel表格的模块会很多,这里不再细说。
    Python脚本编写前的准备:

    下载pycurl模块,直接双击安装即可。
    xlsxwriter使用pip命令安装,此处需要注意环境变量是否配置。
    1、由于pycurl是下载下来直接安装的,这里就不写了,比较简单。
    2、安装xlsxwriter模块(需可连接Internet)
    在这里插入图片描述
    3、采集数据的脚本如下:

    # _._ coding:utf-8 _._
    import os,sys
    import pycurl
    import xlsxwriter
    
    URL="www.baidu.com"            #探测目标的url,需要探测哪个目标,这里改哪个即可
    c = pycurl.Curl()                     #创建一个curl对象
    c.setopt(pycurl.URL, URL)             #定义请求的url常量
    c.setopt(pycurl.CONNECTTIMEOUT, 10)  #定义请求连接的等待时间
    c.setopt(pycurl.TIMEOUT, 10)          #定义请求超时时间 
    c.setopt(pycurl.NOPROGRESS, 1)       #屏蔽下载进度条
    c.setopt(pycurl.FORBID_REUSE, 1)      #完成交互后强制断开连接,不重用
    c.setopt(pycurl.MAXREDIRS, 1)         #指定HTTP重定向的最大数为1
    c.setopt(pycurl.DNS_CACHE_TIMEOUT, 30)
    #创建一个文件对象,以’wb’方式打开,用来存储返回的http头部及页面内容
    indexfile = open(os.path.dirname(os.path.realpath(__file__))+"/content.txt","wb")
    c.setopt(pycurl.WRITEHEADER, indexfile)  #将返回的http头部定向到indexfile文件
    c.setopt(pycurl.WRITEDATA, indexfile)    #将返回的html内容定向到indexfile文件
    c.perform()
    
    NAMELOOKUP_TIME = c.getinfo(c.NAMELOOKUP_TIME)  #获取DNS解析时间
    CONNECT_TIME = c.getinfo(c.CONNECT_TIME)   #获取建立连接时间
    TOTAL_TIME = c.getinfo(c.TOTAL_TIME)        #获取传输的总时间
    HTTP_CODE = c.getinfo(c.HTTP_CODE)     #获取HTTP状态码
    SIZE_DOWNLOAD = c.getinfo(c.SIZE_DOWNLOAD)   #获取下载数据包大小
    HEADER_SIZE = c.getinfo(c.HEADER_SIZE)    #获取HTTP头部大小
    SPEED_DOWNLOAD=c.getinfo(c.SPEED_DOWNLOAD)   #获取平均下载速度
    
    print u"HTTP状态码: %s" %(HTTP_CODE)  #输出状态码
    print u"DNS解析时间: %.2f ms" %(NAMELOOKUP_TIME*1000)  #输出DNS解析时间
    print u"建立连接时间: %.2f ms" %(CONNECT_TIME*1000)  #输出建立连接时间
    print u"传输结束总时间: %.2f ms" %(TOTAL_TIME*1000)   #输出传输结束总时间
    print u"下载数据包大小: %d bytes/s" %(SIZE_DOWNLOAD)  #输出下载数据包大小
    print u"HTTP头部大小: %d byte" %(HEADER_SIZE)   #输出HTTP头部大小
    print u"平均下载速度: %d bytes/s" %(SPEED_DOWNLOAD)  #输出平均下载速度
    indexfile.close()          #关闭文件
    c.close()                #关闭curl对象
    
    f = file('chart.txt','a')     #打开一个chart.txt文件,以追加的方式
    f.write(str(HTTP_CODE)+','+str(NAMELOOKUP_TIME*1000)+','+str(CONNECT_TIME*1000)+','+str(TOTAL_TIME*1000)+','+str(SIZE_DOWNLOAD/1024)+','+str(HEADER_SIZE)+','+str(SPEED_DOWNLOAD/1024)+'\n')               #将上面输出的结果写入到chart.txt文件
    f.close()                #关闭chart.txt文件
    
    workbook = xlsxwriter.Workbook('chart.xlsx')   #创建一个chart.xlsx的excel文件      
    worksheet = workbook.add_worksheet()      #创建一个工作表对象,默认为Sheet1
    chart = workbook.add_chart({'type': 'column'})  #创建一个图表对象
    
    title = [URL , u' HTTP状态码',u' DNS解析时间',u' 建立连接时间',u' 传输结束时间',u' 下载数据包大小',u' HTTP头部大小',u' 平均下载速度']   #定义数据表头列表
    
    format=workbook.add_format()    #定义format格式对象
    format.set_border(1)      #定义format对象单元格边框加粗(1像素)的格式
    
    format_title=workbook.add_format()   #定义format_title格式对象
    format_title.set_border(1)   #定义format_title对象单元格边框加粗(1像素)的格式
    format_title.set_bg_color('#00FF00')  #定义format_title对象单元格背景颜色为’#cccccc’
    
    format_title.set_align('center')   #定义format_title对象单元格居中对齐的格式
    format_title.set_bold()         #定义format_title对象单元格内容加粗的格式
    
    worksheet.write_row(0, 0,title,format_title)    #将title的内容写入到第一行
    
    f = open('chart.txt','r')          #以只读的方式打开chart.txt文件
    line = 1                   #定义变量line等于1
    for i in f:                  #开启for循环读文件
        head = [line]           #定义变量head等于line
        lineList = i.split(',')       #将字符串转化为列表形式
        lineList = map(lambda i2:int(float(i2.replace("\n", ''))), lineList)  #将列表中的最后\n删除,将小数点后面的数字删除,将浮点型转换成整型
        lineList = head + lineList                                  #两个列表相加
        worksheet.write_row(line, 0, lineList, format)              #将数据写入到execl表格中
        line += 1
    
    average = [u'平均值', '=AVERAGE(B2:B' + str((line - 1)) +')', '=AVERAGE(C2:C' + str((line - 1)) +')', '=AVERAGE(D2:D' + str((line - 1)) +')', '=AVERAGE(E2:E' + str((line - 1)) +')', '=AVERAGE(F2:F' + str((line - 1)) +')', '=AVERAGE(G2:G' + str((line - 1)) +')', '=AVERAGE(H2:H' + str((line - 1)) +')']           #求每一列的平均值
    worksheet.write_row(line, 0, average, format)    #在最后一行数据下面写入平均值
    f.close()            #关闭文件
    
    def chart_series(cur_row, line):     #定义一个函数
        chart.add_series({
            'categories': '=Sheet1!$B$1:$H$1',    #将要输出的参数作为图表数据标签(X轴)
            'values':     '=Sheet1!$B$'+cur_row+':$H$'+cur_row,   #获取B列到H列的数据        
            'line':       {'color': 'black'},           #线条颜色定义为black
            'name':    '=Sheet1!$A'+ cur_row,                  #引用业务名称为图例项
        })
    
    for row in range(2, line + 1):  #从第二行开始到最后一次取文本中的行的数据系列函数调用
        chart_series(str(row), line)
    
    chart.set_size({'width':876,'height':287})    #定义图表的宽度及高度
    
    worksheet.insert_chart(line + 2, 0, chart)    #在最后一行数据下面的两行处插入图表
    workbook.close()                     #关闭execl文档
    

    4、运行脚本后,会在脚本所在的目录下产生三个文件,两个是txt文本文件,一个是Excel文件,执行脚本后,会显示如下信息:
    在这里插入图片描述
    5、当前目录下产生的文件如下:
    在这里插入图片描述
    其中,两个txt格式的文件都是为了给Excel做铺垫的,所以可以选择性忽略即可,主要是看Excel中的数据。Excel中的数据如下(以下是执行6次脚本后的显示结果,也就是说探测了6次):
    在这里插入图片描述

    展开全文
  • Python采集数据存储到Excel Python采集数据存储到MySQL MySQL从0安装到穿件数据库和数据表 使用Python链接MySQL 用Python发邮件、定时发邮件
  • 使用python读取excel中的数据,并绘制折线图

    万次阅读 多人点赞 2020-01-09 13:23:29
    做实验的时候采集到一些数据,从文本拷贝到excel,然后从十六进制转换成十进制。图表时分析数据的有利工具,使用python绘制出的图标简明美观。所以我这次尝试一下。python新手,请多多指教。 我这次的数据比较简单,...

    使用python读取excel中的数据,并绘制折线图

    做实验的时候采集到一些数据,从文本拷贝到excel,然后从十六进制转换成十进制。图表是分析数据的有利工具,使用python绘制出的图表简明美观。所以我这次尝试一下。python新手,请多多指教。

    我这次的数据比较简单,在excel中只有一个sheet,一列有效数据。所以这次的任务可以分为两部分:读取数据,绘图。

    一, 读取数据

    链接
    这个写的很详细,但是可能因为python的版本不同,语法有些出入,然后这个博主有多个sheets,所以不好套用。

    强行套用的后果:这是我第一次做出来的结果,这个图像与预期相差很大。
    我第一次做出来的结果,这个图像与预期相差很大
    但是总结一下经验,我需要做的其实很简单:1,打开excel文件;2,读取当前sheet;3,读取我那一列有效数据并存储。
    接下来我们一一讲解:

    1. 打开excel文件:
      导入xlrd是必须的。
      点击查看关于xlrd的更多资料
      首先需要 import xlrd
      然后打开文件的指令是:
      xlrd.open_workbook(filename=None, logfile=<_io.TextIOWrapper name=’’ mode=‘w’ encoding=‘UTF-8’>, verbosity=0, use_mmap=1, file_contents=None, encoding_override=None, formatting_info=False, on_demand=False, ragged_rows=False)
      在这个例子中, 读取出来的excel文件被存入新建变量data中:
      data = xlrd.open_workbook(r’文件存储地址及文件名’)
    2. 读取当前sheet
      我个人理解是,打开文件以后,将文件视为一个列表,列表的元素就是文件中所含的sheet。
      所以,如果我要读取第一个sheet,只需将其存入一个新建变量中:
      table = data.sheets()[0]
      如果要读取第二个的话,就改变[ ]中的数值即可。
    3. 读取有效数据
      我把数据存在第3列,其中第1行是标题行,剩余的第2行至第301行都是我的实验数据,所以我现在要做的就是把第3列读出来,存入列表中,然后将第2至301个数据存入y_data中。
      第3列的数据我定义为cap:cap = table.col_values(2)
      然后再使用一个循环,从cap中读取出我需要的数据。
      for i in range(1,301):
        y_data.append(cap[i])
    

    我的x轴就是1至300自然数,所以不单独读取了。

    二, 画图

    画图的话就相对简单了,使用matplotlib.pyplot即可。首先需要导入:

    import matplotlib.pyplot as plt
    

    plt.plot(x_data, y_data, ‘bo-’, label = u’response’, linewidth = 1)
    #plt.plot(x轴数据, y轴数据, 曲线类型,图例说明,曲线线宽)
    plt.title(‘标题’)
    plt.legend() #使能,具体怎么个作用我也不清楚
    plt.xlabel(‘x轴标签’)
    plt.ylabel(‘y轴标签’)
    plt.show() #显示图像

    好了,把这些语句搞搞清楚,就可以写出一个简单的代码,并绘制图像了。

    我的代码如下:

    import matplotlib.pyplot as plt
    import xlrd
    
    x_data=[]
    y_data=[]
    
    data = xlrd.open_workbook(r'文件存储位置+文件名')
    table = data.sheets()[0]
    x_data = list(range(300))
    
    cap = table.col_values(2)
    #print(cap)  #打印出来检验是否正确读取
    
    for i in range(1,301):
        y_data.append(cap[i])
        
    plt.plot(x_data, y_data, 'bo-', linewidth = 1)
    plt.title('biaoti')
    plt.legend()
    
    plt.xlabel('x')
    plt.ylabel('y')
    plt.show()
    

    然后就显示出漂亮的曲线啦,真的超简单的。
    我的数据做成的图,可以看到还是不错的

    展开全文
  • python读取excel数据到mysql

    千次阅读 2019-09-10 17:31:42
    最近工作中需要临时将外部的excel数据导入到自己公司的系统中,作为原始的数据进行后续处理,一开始打算写一段程序进行处理的,想想还是放弃了,因为java程序读取excel数据到mysql总体来说还是比较麻烦的,而且...
  • python读取excel数据绘制简单曲线图

    千次阅读 2020-10-27 16:59:39
    python读写excel文件有很多种方法: 用xlrd和xlwt进行excel读写 用openpyxl进行excel读写 用pandas进行excel读写 本文使用xlrd读取excel文件(xls,sxls格式),使用xlwt向excel写入数据 一、xlrd和xlwt的安装 安装...
  • 引言:在写完上一篇《浅尝Python数据分析:分析2018政府工作报告中的高频词》,一直都处于一种亢奋的状态,满脑子都想着数据分析,膜一下当然很开心,更重要的是感受到了Python数据分析的好玩,迫不及待地想写个新的...
  • #-*-coding:utf-8-*-import xlrdimport xlwtdef excel_copy(dir_from, dir_to, sheet_name):'''从一个excel写入到另外一个excel'''wb = xlrd.open_workbook(dir_from)# 选择sheet页sheet1 = wb.sheet_by_index(0)# ...
  • 目录: 常用格式的本地数据读写 Python的数据库基本操作 ... 常用的数据分析文件格式:txt,csv,json,xml(Excel),xls,HDF 1.txt文件读写 由字符串行组成,每行由EOL(End Of Line)字符隔开,'\n...
  • 系列一:《python数据分析基础与实践》 章节1Python概况 课时2Python简介 章节2Python安装 课时3安装Anaconda 课时4使用Anaconda 章节3数据准备 课时5数据类型 – 布尔型 课时6数据类型 – 数值型 课时7数据类型 – ...
  • 使用xlwt创建excel表,存储数据 3.1 创建excel表 运行结果 3.2 将数据添加到excel表中 3.3 批量添加数据(让j累加) 3.4 多页数据添加 最终代码 importrequestsfrom lxml importetreeimportxlwt#设置浏览器的请求头...
  • 原标题:Python网络爬虫与文本数据分析 课程介绍在过去的两年间,Python一路高歌猛进,成功窜上“最火编程语言”的宝座。惊奇的是使用Python最多的人群其实不是程序员,而是数据科学家,尤其是社会科学家,涵盖的...
  • 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤世间无限丹青手,一片伤心画不成。python处理数据文件的途径有很多种,...
  • 本报告主要针对开放型基金进行大数据分析,使用的工具为excelpython。其中,excel主要使用了数据透视表,python则以pandas,pyechars,seaborn,matplotlib等。结合天天基金网、晨星网的数据为主,分析研究所有开放...
  • 一、数据分析 1 数据分析的基本概念 1.用适当的统计分析方法对收集来的大量数据进行分析 2.提取有用信息和形成结论 3.对数据加以详细研究和概况总结 目的:从数据中挖掘规则、验证猜想、进行预测 2 数据分析的流程...
  • 1 数据采集概述 ...使用爬虫采集数据 直接获得excel、csv及其他数据文件 其他途径… 本次福布斯系列数据分析项目实战,数据采集方面,主要数据来源于使用爬虫进行数据采集,同时也辅助其他数据进行对比。
  • 以上采集中简单用到了xlwt模块,同时将采集到的数据保存到了excel文件中便于分析excel中保存的数据如下: 有了数据下一步的工作就是对这些数据进行分析,从而得出潜在有用的知识,这才是目的,...
  • 转载:自己学习使用一 学好工具python语言数据分析python基础如list,tuple,dic,set等。我之后的博客会写到。二 获取数据python爬虫推荐一本书:《Python网络数据采集》(web Scraping with Python) Ryan Mitchell 写...
  • python数据分析
  • [玛祖采集]python爬虫实践 采集高德地图上的位置 店铺信息 导出excel表格 一、环境OS:win10python:3.7 用到的库 from urllib.parse import quote from urllib import request import json import xlwt import sys ...
  • 在写完上一篇《浅尝Python数据分析:分析2018政府工作报告中的高频词》, 一直都处于一种亢奋的状态,满脑子都想着数据分析,膜一下当然很开心, 更重要的是感受到了Python数据分析的好玩,迫不及待地想写个新的东西...
  • 再尝Python数据分析采集拉勾网数据分析Android就业行情 标签:Python 一句话概括本文: 爬取拉钩Android职位相关数据,利用numpy,pandas和matplotlib对招人公司 情况和招聘要求进行数据分析。 引言: ...
  • python其实可以做很多事情,比如树莓派+传感器,采集实验数据。但是每次数据要导出,再进行人工处理,还是比较麻烦的。如果都可以python搞定,可以方便很多。其实处理数据步骤:1、打开文件、导入数据import pandas ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,314
精华内容 2,125
关键字:

python分析excel采集数据

python 订阅