Tag: python

使用OpenPyXL将Excel数据写入Python中的错误

对不起,打了一堆深奥的代码,但我遇到了一个错误,我不知道如何解决。 基本上,我想读取电子表格列中的单个单元格,并将其数据写入相应的字典(称为dataSet)。 我创build了一个function来做到这一点: def loopCol(col, start_offset, write_list): ''' Loop through 1 column (col) until it ends. Skip header by start_offset. Write data to list within DataSet dict ''' from openpyxl.utils import column_index_from_string # Create list and capture str of its name list_string = str(write_list) print(list_string) if list_string not in dataSet: raise KeyError('List name not within […]

幂律曲线拟合scipy,numpy不工作

我想出了一个在我的数据上拟合幂律曲线的问题。 我有两个数据集:bins1和bins2 (使用np.exp(coefs[0])*x**coefs[1]来获得幂律方程),然后使用np.exp(coefs[0])*x**coefs[1] 另一方面,bin2performance奇怪,并显示一个不好的R平方 这两个数据有不同的方程比excel显示我(和更糟糕的R平方)。 这里是代码(和数据): import numpy as np import matplotlib.pyplot as plt bins1 = np.array([[6.769318871738219667e-03, 1.306418618130891773e-02, 1.912138120913448383e-02, 2.545189874466026111e-02, 3.214689891729670401e-02, 4.101898933375244805e-02, 5.129862592803200588e-02, 6.636505322669797313e-02, 8.409809827572585494e-02, 1.058164348650862258e-01, 1.375849753230810046e-01, 1.830664031837437311e-01, 2.682454535427478137e-01, 3.912508246490400410e-01, 5.893271848997768680e-01, 8.480213305038615257e-01, 2.408136266017391058e+00, 3.629192766488219313e+00, 4.639246557509275171e+00, 9.901792214343277720e+00], [8.501658465758301112e-04, 1.562697718429977012e-03, 1.902062808421856087e-04, 4.411817741488644959e-03, 3.409236963162485048e-03, 1.686099657013027898e-03, 3.643231240239608402e-03, 2.544120616413291154e-04, 2.549036204611017029e-02, 3.527340723977697573e-02, 5.038482027310990652e-02, 5.617932487522721979e-02, 1.620407270423956103e-01, 1.906538999080910068e-01, 3.180688368126549093e-01, 2.364903188268162038e-01, 3.267322385964683273e-01, 9.384571074801122403e-01, 4.419747716107813029e-01, […]

Python:根据之前单元格中的公式自动填充Excel中的单元格

使用Python和win32com: 我有一个Excel文件中的单元格,单元格A5:A54。 我正在尝试按照相同的公式填充单元格A55:A61。 我在网上search,发现这个: http : //pythonexcels.com/python-excel-mini-cookbook/ 从链接引用:“此脚本使用Excel的自动填充function来检查单元格A1和A2中的数据,然后通过A10自动填充单元格的其余列。 链接中的代码: # # Autofill cell contents # import win32com.client as win32 excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Add() ws = wb.Worksheets("Sheet1") ws.Range("A1").Value = 1 ws.Range("A2").Value = 2 ws.Range("A1:A2").AutoFill(ws.Range("A1:A10"),win32.constants.xlFillDefault) wb.SaveAs('autofill_cells.xlsx') excel.Application.Quit() 所以我尝试了在我的代码中: from win32com.client import Dispatch from win32com.client import constants import os from Tkinter import Tk from tkFileDialog import […]

结合两个列表形成一个字典

我已经从Excel表格的两列中提取了我需要的数据作为两个列表。 当我试图将这两个列表结合成一个字典时,最终的输出结果只有300个条目,而我的Excel表格有大约1200个条目。 为什么不是所有的条目都存储在字典中? 这是我的代码: import xlrd xl_workbook = xlrd.open_workbook("my_doc.xls") sheet1 = xl_workbook.sheet_by_index(0) list1 = sheet1.col_values(2) list2 = sheet1.col_values(3) data = dict(zip(list1, list2)) 我尝试打印list1,list2和数据的长度进行交叉检查。

自动从Excel导出到MySQL

我有一系列的报告,每天都有传入,并希望自动执行此过程。 到目前为止,我已经把电子邮件推送到一个文件夹和一个python脚本来格式化他们在数据库中的密钥匹配,并重新写入一个新的文件。 我被困在导出csv文件到MySQL的过程。 有任何想法吗?

在Excel中使用csv在Python中编写单个单词?

我有一个普通的.txt文档,我将其分解为单个单词,将它们附加到列表中,然后我试图将该列表写入Excel文件,以便每个单词都是文件中的新单元格。 不pipe我做什么,我的代码都会把string中的所有单词都放在一个单元格中,而不是按照我的意思将它分开。 如果你能帮忙,你能帮忙解释一下为什么你的解决scheme有效或为什么我的错误? 谢谢! 以下是我的代码现在的样子: import csv list_of_words = [] with open('ExampleText.txt', 'r') as ExampleText: for line in ExampleText: for word in line.split(): print(word) list_of_words.append(word) print("Done!") print("Also done!") with open('Gazete.csv', 'wb') as WordsFromText: writer = csv.writer(WordsFromText, delimiter=' ', dialect='excel') writer.writerow(list_of_words)

无法使用python xlsxwriter写表

我正在编写一个脚本来将多个表写入一个Excel工作表。 我正在使用Python 2.6和xlsxwriter来完成任务,但我无法创build一个表,并没有显示错误。 只是列名称被添加到Excel工作表。 这是我用来创build表的代码 import xlsxwriter report = xlsxwriter.Workbook('example_report.xlsx') sheet = report.add_worksheet() row_count = 0 column_count = 0 table_headers = [ {'header': 'Product'}, {'header': 'Quarter 1'}, {'header': 'Quarter 2'}, {'header': 'Quarter 3'}, {'header': 'Quarter 4'}, ] excel_write_data = [ ['Apples', 10000, 5000, 8000, 6000] ] table_row_count = row_count+len(excel_write_data) table_column_count = column_count+len(table_headers) sheet.add_table( row_count, column_count, […]

使用csv python行和列

嘿,我试图创build一个字典,通过使用python中的内置模块csv。 本质上它是一个名为weather.csv的excel文件,其中行字典中的键是列标题,值是该行的值。 我被卡住了,因为我不能让代码运行多列来同时生成两个字典。 此外,我得到一个关键的错误,它说打印行['col_list'],我不明白为什么发生。 col_list是每一行的标题。 这是我迄今为止的代码: import csv def read_file(filename, col_list): filename = 'weather.csv' with open('weather.csv', 'r') as f: reader = csv.DictReader(f) for row in reader: print row['col_list'] 这是我希望我的输出是。 我觉得这很简单,但是我很难搞清楚。 print read_file('weather.csv', ['TemperatureF', 'VisibilityMPH']) {'TemperatureF': [30.9, 32.0, 32.0, 32.0, 32.0, 30.9 …], 'VisibilityMPH': [10.0, 10.0, 10.0, 10.0, 4.0, 2.5 …]}

python将数据添加到现有的Excel单元格Win32com

假设我有A1作为工作簿中唯一的单元格,它是空白的。 我想我的代码添加“1”“2”和“3”,所以它说“1 2 3” 截至目前我有: NUMBERS = [1, 2, 3, 4, 5] ThisSheet.Cells(1,1).Value = NUMBERS 这只是将第一个值写入单元格。 我试过了 ThisSheet.Cells(1,1).Value = Numbers[0-2] 但是这只是把最后的价值在那里。 有没有办法让我添加所有的数据呢? 这些信息将始终是string格式,我需要使用Win32Com。 更新:我做到了 stringVar =','.join(str(v)for v in LIST) 更新:这个.join完美地为NUMBERS列表。 现在我试着把它归结到另一个看起来像这样的列表 LIST=[Description Good\nBad, Description Valid\nInvalid] 如果我打印LIST [0]结果是 Description Good Bad 这是我想要的。 但是,如果我在这个上使用.join,它会打印 ('Description Good\nBad, Description Valid\nInvalid') 所以对于这个我需要它打印,就像我做LIST [0]和LIST [1]

如何将xlsx转换为制表符分隔的文件

我有相当多的xlsx文件,这是一个痛苦转换他们一个一个制表符分隔的文件 我想知道是否有任何解决scheme,由python做到这一点。 在这里,我发现了什么,试图做什么失败这个我发现,我试过的解决scheme,但没有工作质量转换.xls和.xlsx到.txt(制表符分隔)在Mac 我也试图做一个文件,看看它是如何工作,但没有成功 #!/usr/bin/python import xlrd import csv def main(): # I open the xlsx file myfile = xlrd.open_workbook('myfile.xlsx') # I don't know the name of sheet mysheet = myfile.sheet_by_index(0) # I open the output csv myCsvfile = open('my.csv', 'wb') # I write the file into it wr = csv.writer(myCsvfile, delimiter="\t") for rownum in […]