Tag: python 3.x

阅读用python提取的推文

我正在尝试阅读excel中的推文。 Tweets已经被python (和tweepy )检索,然后保存在一个csv文件中: # -*- coding: utf-8 -*- writer= csv.writer(open(r"C:\path\twitter_"+date+".csv", "w"), lineterminator='\n', delimiter =';') writer.writerow(["username", "nb_followers", "tweet_text"]) auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token_key, access_token_secret) api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True) for tweet in tweepy.Cursor(api.search, q="dengue+OR+%23dengue", lang="en", since=date, until=end_date).items(): username=tweet.user.screen_name nb_followers=tweet.user.followers_count tweet_text=tweet.text.encode('utf-8') writer.writerow([username, nb_followers, tweet_text]) 由于utf-8编码,我有问题在文本编辑器或Excel中阅读。 比如这个推文: 在Excel中给出这个: b"\xe2\x80\x9c@ThislsWow: I want to do this \xf0\x9f\x98\x8d http://t.co/rGfv9e70Tj\xe2\x80\x9d pu\xc3\xb1eta […]

Python将.csv中的特定行复制到.xlsx中,假设特定值位于第三列中

我是python的新手。 我在联合国做了一个非常小的数额。 我正在为我的家庭开发个人程序,它从ftp站点获取.csv文件,将它们合并在一起,然后将信息放入一个模板.xlsx文件中。 这个csv中的信息由每行保存一组节点的位置数据组成。 我坚持这最后一节,将信息从csv文件移动到xlsx文件。 下面的图片是csv文件的一部分: http : //i.stack.imgur.com/6mST3.png 第三列(标记为阀门)将有多个行从1 – 15,它会重复(所以会有不止一行,在该列中有一个1,以此类推)。 我需要将这个列中的所有行都复制到xlsx模板中预先存在的表单中。 然而,其他列也可能有一个1,没有在第三列1,所以它需要根据该列单独。 我尝试了一些方法,但不断打错误或在xlsx中结束了损坏的信息(例如,将所有行合并成一行,列位于不同位置,等等) 到目前为止,包括我目前正在使用的代码是两个不同的代码,我已经尝试过,但没有成功。 第一个代码是: wb = openpyxl.load_workbook('MasterTemplate4.xlsx') ws = wb.get_sheet_by_name('All') with open('file location' + fl1 + '.csv') as f: reader = csv.DictReader(f) rows = [row for row in reader if row['Valve Pos'] != '1'] for row in rows: ws.write(row) wb.save('save location' + […]

使用循环创build带有Dataframe Pandas的Excel表格

我正在研究这个function,为幻想足球信息的网站,并写入一个Excel文件。 最终,我希望在Excel工作簿中的每个工作表中有每周的信息。 下面发布的代码完美工作,直到我想将其写入Excel工作簿。 工作手册最后只有17周的数据。 看来,每当我真的希望每次添加表单时,pandasExcelWriter都会覆盖表单。 我无法find任何关于在pandasExcelWriter中使用循环创build工作表的任何信息,所以我不完全确定是否可以按照我想要的方式完成工作。 import bs4 as bs import urllib.request import pandas as pd from pandas import ExcelWriter for week in range(1,18): #IGNORE MOST OF THIS STUFF BELOW BECAUSE IT WORKS AS IS source = urllib.request.urlopen('http://fftoday.com/stats/playerstats.php?Season=2015&GameWeek='+str(week)+'&PosID=10&LeagueID=1').read() soup = bs.BeautifulSoup(source, 'lxml') table = soup.find('table', width='100%', border='0', cellpadding='2', cellspacing='1') table_rows = table.find_all('tr') player_data = {} […]

Xlsxwriter Python3错误

我正在麻烦我的python3脚本,closuresxlsxwriter。 我已经包括workbook.close(),但这似乎导致某种错误。 有谁知道问题是什么? import xlsxwriter import statistics workbook = xlsxwriter.Workbook('data.xlsx') worksheet = workbook.add_worksheet() bold = workbook.add_format({'bold': True}) power = [] for row in list: power.append(row) worksheet.write(i, col, row) col += 1 worksheet.write(i, col, statistics.median(power)) workbook.close() Traceback (most recent call last): File "example.py", line 71, in <module> workbook.close() File "/usr/local/lib/python3.4/dist-packages/xlsxwriter/workbook.py", line 311, in close self._store_workbook() File […]

pandas:遍历DataFrames列表并将其导出到Excel表单

试图教自己编码,以自动化一些繁琐的工作。 我为任何无意的无知道歉。 我在pandas(python 3.x)中创build了数据框架。 我想打印每个数据框到不同的Excel表。 这里是我有2个数据框架,它的工作原理是完美的,但我想要缩放它来循环通过一个数据框架列表,这样我可以使它更加dynamic。 writer = pandas.ExcelWriter("MyData.xlsx", engine='xlsxwriter') Data.to_excel(writer, sheet_name="Data") ByBrand.to_excel(writer, sheet_name="ByBrand") writer.save() 很简单,但是当有50多张纸需要被创build时,它会变得乏味。 这是我试过的,它不起作用: writer = pandas.ExcelWriter("MyData.xlsx", engine='xlsxwriter') List = [Data , ByBrand] for i in List: i.to_excel(writer, sheet_name= i) writer.save() 我认为问题是sheet_name字段必须是一个string,因为它是创build一个错误。 但是如果我把sheet_name =“i”,它只会用Data中的数据创build一个名为“i”的表单,但是不会迭代到ByBrand。 而且,如果表单没有命名为相应的数据框,那么excel文件将是一场噩梦,所以请不要对像编号表单这样的东西提出build议。 提前感谢你,这个网站对我的编程之旅来说是非常宝贵的。 -Stephen

比较来自不同excel文件的列,并在每个输出的开头添加一列

我想开始说,我不是Excel专家,所以我需要一些帮助。 假设我有3个excel文件: main.xlsx , 1.xlsx和2.xlsx 。 在他们所有的我有一个名为Serial Numbers的列。 我不得不: 查找1.xlsx和2.xlsx所有序列号 ,并validation它们是否在main.xlsx 。 如果find一个序列号: 在main.xlsx的最后一列上,在同一行上find的编号为OK + name_of_the_file_in which_it_was_found的序列号 OK + name_of_the_file_in which_it_was_found 。 否则写NOK 。 同时,如果find序列号,则在最后一列写入1.xlsx和2.xlsx ok或nok 。 提及 : serial number可以在1.xlsx和2.xlsx上的不同列上 例: main.xlsx name date serial number phone status ab abcd c <– ok,2.xlsx bc 1234 d <– ok,1.xlsx cd 3456 e <– ok,1.xlsx de […]

在Python中将“0000-00-00”转换为“标志”

我想在一个特定的范围内检查一些date的数据转换成string。 我首先将所有数据转换为floattypes,以便它可以提供date格式的输出,但是当我将其应用于显示的date时: a1 = float(a1) ValueError: could not convert string to float: '0000-00-00' 我的整个代码是: import xlrd import os.path from datetime import datetime date_array = [] wb = xlrd.open_workbook(os.path.join('E:\Files','SummaryLease.xlsx')) sh = wb.sheet_by_index(0) for i in range(1,sh.nrows): a1 = sh.cell_value(rowx=i, colx=80) if a1 is '0000-00-00': date_array.append('flag') else: a1 = float(a1) a1_as_datetime = datetime(*xlrd.xldate_as_tuple(a1, wb.datemode)) date_array.append(a1_as_datetime.date()) print(date_array) 我应该如何解决这个问题?

使用Pandas在Python中复制Excel的IndexMatch

我有一个Excel电子表格,我经常更新(每天2-3次)。 此更新需要运行索引匹配来从另一个电子表格中的表中提取值,并将其写入第一个列中的列。 值覆盖旧的,而不是创build一个新的列。 我想使用pandas(和xlwings将数据写入电子表格,但我没有与该部分的问题)自动化此过程。 第一步是复制excel的INDEXMATCH()和pandas。 总的来说,该function应该: 采用的参数是要编入索引的列的string标题,要写入的列以及包含用于匹配读写列的值的列 迭代写入列; 在每次迭代中,在读取列中search对应的匹配列值与写入列的匹配列值匹配的值 如果没有匹配值,则将NaN或“#N / A”写入dataframe(重要的是区分0和不匹配) 我期望在pandas中有一个本地的vlookup / indexmatchfunction,但我能find的唯一的东西是关于连接或合并数据框,这不是我想要做的 – 我想覆盖数据框中的各个值,并以任意的索引顺序进行。 我已经设法使用一个非常丑陋的特定于脚本的函数来工作,但是我认为尝试将函数推广到其他用途将是有用的。 经过一些清理和重写,我有以下几点: ##Index Match in Python with pandas #Remember that dataframes start at 0, excel starts at 1 #This only works if both DFs have the same indices (integers, strings, whatever) import numpy as np import pandas as […]

同时将pandasDataFrame写入xlsx

我有一个DataFrame需要分割和写入不同的Excel文件基于特定的列… df = pd.DataFrame(np.arange(28).reshape((7, 4))) df['group'] = ['a', 'a', 'c', 'c', 'd', 'd', 'e'] 0 1 2 3 group 0 0 1 2 3 a 1 4 5 6 7 a 2 8 9 10 11 c 3 12 13 14 15 c 4 16 17 18 19 d 5 20 21 22 23 d […]

从CSV读取并存储在Excel选项卡中

我正在读取多个CSV(通过URL)到多个Pandas DataFrames中,并希望将每个CSV的结果存储到单独的Excel工作表(选项卡)中。 当我在for循环中保留writer.save() ,我只在一个工作表中得到最后的结果。 当我在for循环之外移动writer.save() ,我只在一个工作表中得到第一个结果。 两者都是错误的。 import requests import pandas as pd from pandas import ExcelWriter work_statements = { 'sheet1': 'URL1', 'sheet2': 'URL2', 'sheet3': 'URL3' } for sheet, statement in work_statements.items(): writer = pd.ExcelWriter('B.xlsx', engine='xlsxwriter') r = requests.get(statement) # go to URL df = pd.read_csv(statement) # read from URL df.to_excel(writer, sheet_name= sheet) writer.save() 我怎样才能在三个单独的工作表中得到三个结果?