Tag: pandas

如何绘制一个事件相对于其他事件的频率?

我想用python / matplotlib / pandas来达到我的目的。 问题描述:我有一个Excel表格(我可以读作pandas数据框)包含一个真实和估计值的表格。 我想以某种方式捕捉这个信息的实际(横轴)与估计值(垂直轴)的情节。 Excel表格看起来有点如下: 我在想散点图。 但我不知道如何获得这样的情节。 在这种情况下,这不是一个简单的散点图。 另外,轴需要不同的处理。 如果有其他适当的方法,请随时提出build议。 编辑1: 正如@BrenBarn所build议的那样,我在“ 交叉validation”中发布了我的查询。 我特别喜欢的一个答案显示了下面的可视化:( 见链接) 我想用python生成一个类似的散点图。 谁能帮我吗?

用PythonparsingExcel Pandas 0.18 => 23,999(欧式)被parsing为23999

我使用Pandas 0.18来分析一个.xlsx文件,该文件具有浮点数值为零或小于2位的数字。 不知何故,Pandas(运行在Flask服务器上,US风格)将其parsing为数千个。 df=pd.read_excel(filepath) df['T'] = pd.to_numeric(df['T'] ,errors='coerce') 只有2个数字( 23,99 )的值被转换为23.99 ,这没问题。 3位数( 23,999 )的值被转换为23999 。 这是一个错误还是我错过了选项,或者我应该更改Flask / Pandas服务器上的设置? (这可能会给上传美式Excel表格带来麻烦)

Pythonpandas读取来自同一张Excel表格的各种数据框

目前与大pandas,我可以保存各种数据框(不同大小)到同一张Excel表,用startrow和startcol来指定​​位置。 with pd.ExcelWriter(dump_excel) as writer: dataframe1.to_excel(writer, sheet_name='sheet1', startrow=40, startcol=0) dataframe2.to_excel(writer, sheet_name='sheet1', startrow=0, startcol=0) dataframe3.to_excel(writer, sheet_name='sheet2', startrow=0, startcol=0) 我想知道,如果我可以分别读取各种dataframe1和dataframe2。

XML到pandas:导出到CSV并使儿童在同一行

我正处于“酝酿阶段”,试图用pandas将XML文件转换为csv。 我终于做了与代码波纹pipe: for element in etree.iterparse(path): data.append({element.tag: element.text}) df = pd.DataFrame(data,columns=['NOME_DISTRITO', 'NR_CPE', 'MARCA_EQUIPAMENTO', 'NR_EQUIPAMENTO','VALOR_LEITURA','REGISTADOR', 'TIPO_REGISTADOR','TIPO_DADOS_RECOLHIDOS','FACTOR_MULTIPLICATIVO_FINAL', 'NR_DIGITOS_INTEIRO','UNIDADE_MEDIDA','TIPO_LEITURA','MOTIVO_LEITURA', 'ESTADO_LEITURA','DATA_LEITURA','HORA_LEITURA']) df.to_csv('/lecture.csv') 这是XML文件: <DISTRITO xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <NOME_DISTRITO>BRAGANCA</NOME_DISTRITO> <CPE> <NR_CPE>PT000200003724</NR_CPE> <LEITURA> <MARCA_EQUIPAMENTO>102</MARCA_EQUIPAMENTO> <NR_EQUIPAMENTO>30806746</NR_EQUIPAMENTO> <VALOR_LEITURA>16858</VALOR_LEITURA> <REGISTADOR>001</REGISTADOR> <TIPO_REGISTADOR>S</TIPO_REGISTADOR> <TIPO_DADOS_RECOLHIDOS>1</TIPO_DADOS_RECOLHIDOS> <FACTOR_MULTIPLICATIVO_FINAL>1</FACTOR_MULTIPLICATIVO_FINAL> <NR_DIGITOS_INTEIRO>5</NR_DIGITOS_INTEIRO> <UNIDADE_MEDIDA>kWh</UNIDADE_MEDIDA> <TIPO_LEITURA>2</TIPO_LEITURA> <MOTIVO_LEITURA>2</MOTIVO_LEITURA> <ESTADO_LEITURA>A</ESTADO_LEITURA> <DATA_LEITURA>20151218</DATA_LEITURA> <HORA_LEITURA>083800</HORA_LEITURA> </LEITURA> <LEITURA> <MARCA_EQUIPAMENTO>102</MARCA_EQUIPAMENTO> <NR_EQUIPAMENTO>30806746</NR_EQUIPAMENTO> <VALOR_LEITURA>16925</VALOR_LEITURA> <REGISTADOR>001</REGISTADOR> <TIPO_REGISTADOR>S</TIPO_REGISTADOR> <TIPO_DADOS_RECOLHIDOS>1</TIPO_DADOS_RECOLHIDOS> <FACTOR_MULTIPLICATIVO_FINAL>1</FACTOR_MULTIPLICATIVO_FINAL> <NR_DIGITOS_INTEIRO>5</NR_DIGITOS_INTEIRO> <UNIDADE_MEDIDA>kWh</UNIDADE_MEDIDA> <TIPO_LEITURA>1</TIPO_LEITURA> <MOTIVO_LEITURA>1</MOTIVO_LEITURA> <ESTADO_LEITURA>A</ESTADO_LEITURA> <DATA_LEITURA>20160119</DATA_LEITURA> <HORA_LEITURA>203000</HORA_LEITURA> […]

如何将一个字典和一个数据框一起写入excel

我有一个定义客户的字典: Customer role:blah phonenumber:111-222-3333 company:blahblah branch:blahblahblah 我有一个包含大约10栏信息的所有运输信息的数据框。 我想要完成的是首先在工作表中写入我已经匹配的客户信息,然后在其下面包含标题的数据框,然后为最后一个客户下一个客户做同样的事情。 每个工作表都是按angular色定义的,所以没有那么多客户出现在同一张工作表上。 我想出了如何根据angular色工作表将数据框写入工作簿,但是我无法打印出上面的字典。 你们能帮我吗? # Create a Pandas Excel writer using XlsxWriter as the engine. writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter') row_count = dict() for ID in df['PhoneNumber']: sheet_name_var = str(self.match_ID2role(ID)) #count the row position for each df in each sheet df_length = len(df) try: row_count[sheet_name_var]+=1 except: row_count[sheet_name_var]=1 #add the […]

读pandasencryptionexcel

我正在用python通过encryption的excel文件扫描数据。 我想在不打开excel的情况下阅读文件内容。 这是我的代码。 我通常使用pandas来读取文件,但pandas.read_excel不允许添encryption码。 from xlrd import * import win32com.client import csv import sys xlApp = win32com.client.Dispatch("Excel.Application") xlwb = xlApp.Workbooks.Open(path1+file_name, Password='password') 谢谢

如何使用xlsxwriter格式化索引列?

我正在使用xlsxwriter和set_column函数来格式化我的excel输出中的列。 但是,应用于索引列(或多索引情况下的索引列)时,格式似乎被忽略。 我find了一个解决方法,到目前为止是引入一个伪索引与reset_index然后传递索引= False to_excel函数,但是那么多索引很好的合并function将不复存在。 有任何想法吗? import pandas as pd import numpy as np from Config import TEMP_XL_FILE def temp(): ' temp' pdf = pd.DataFrame(np.random.randn(6,4), columns=list('ABCD')) pdf.set_index('A', drop=True, inplace=True) writer = pd.ExcelWriter(TEMP_XL_FILE, engine='xlsxwriter') pdf.to_excel(writer, 'temp') workbook = writer.book worksheet = writer.sheets['temp'] tempformat = workbook.add_format({'num_format': '0%', 'align': 'center'}) worksheet.set_column(-1, 3, None, tempformat) writer.save() if __name__ == […]

读取excel并将索引转换为datatimeindexpandas

我读了这样一个pandas的excel df = pd.read_excel("Test.xlsx", index_col=[0]) 数据框的外观与包含date和时间以及一列的索引类似: 01.01.2015 00:15:00 47.2 01.01.2015 00:30:00 46.6 01.01.2015 00:45:00 19.4 01.01.2015 01:00:00 14.8 01.01.2015 01:15:00 14.8 01.01.2015 01:30:00 16.4 01.01.2015 01:45:00 16.2 … 我想将索引转换为datatimeindex,我试过了 df.index = pd.to_datetime(df.index) 并得到:“ValueError:未知的string格式” 这里最好的方法是将索引转换为包含date和tiem的数据时间格式,以使用基于datetime的函数

将Xlsxwriter工作表转换为Pandas Dataframe

我有一个从Excel表格中读取的DataFrame,其中我已经使用Xlsxwriter创build了一些新的列。 现在我需要使用我在Xlsxwriter中创build的新列(这是一个date列btw)过滤这个新的数据集。 有没有办法再次把这个新的工作表变成一个数据框,所以我可以过滤新的列? 我会尽力提供任何有用的代码: export = "files/extract.xlsx" future_days = 12 writer = pd.ExcelWriter('files/new_report-%s.xlsx' % (date.today()), engine ='xlsxwriter') workbook = writer.book df = pd.read_excel(export) df.to_excel(writer, 'Full Log', index=False) log_sheet = writer.sheets['Full Log'] new_headers = ('todays date', 'Milestone Date') log_sheet.write_row('CW1', new_headers) # This for loop just writes in the formula for my new columns on every line […]

Python当从Excel导入时尝试select要跳过的行列表时,语法'''无效

我试图从一个非常大的页脚的Excel文件导入一些数据。 当我把skip_footer=[245:]告诉我:是invlaid语法。 我怎样才能从行(0-indexed) 245页脚切出页脚结尾? 我不想手动列出它[245, 246, 247 …]因为这将需要很长时间。 非常感谢