Tag: pandas

根据大pandas的date范围select过滤Excel数据

我想知道如何过滤基于特定date范围的Excel数据使用pandas通过python。 举个例子: (sheet1.xlsx)包含: DATE 51 52 53 54 55 56 20110706 28.52 27.52 26.52 25.52 24.52 23.52 20110707 28.97 27.97 26.97 25.97 24.97 23.97 20110708 28.52 27.52 26.52 25.52 24.52 23.52 20110709 28.97 27.97 26.97 25.97 24.97 23.97 20110710 30.5 29.5 28.5 27.5 26.5 25.5 20110711 32.93 31.93 30.93 29.93 28.93 27.93 20110712 35.54 34.54 […]

用于合并两个电子表格的Python代码,与Excel中的“索引匹配匹配”function类似

我有两个单独的电子表格,并使用pandas为了将其转换成数据框架。 我正在寻找从电子表格2中提取信息并将这些信息合并到电子表格1中。我知道如何通过使用“索引匹配匹配”function来提取excel中的信息,但是我在使用Python因为它似乎不适合合并或连接方法…或者我只是错过了连接。 电子表格1将如下所示: 电子表格1 电子表格2将如下所示: 电子表格2 最终结果的头像是这样的: 区域分支Master_Product_Name Retrieved_# 北,弗雷斯诺,产品1: 5,060 北,弗雷斯诺,产品2: 2,429 北,萨克拉门托,产品3: 405 北,弗雷斯诺,产品6:10 会发生什么事是程序将插入一个新的列,并将基于索引列和行插入数据到单个数据点。 所以对于我的例子中的第一行,这是弗雷斯诺和产品1 …它将在电子表格中看两行,直到它到达产品1,然后直到find弗雷斯诺和插入5,060。 在目前的情况下,有地区栏不重要,但有能力检索基于多个标准是我能想象的。

用python和pandas和多个索引读取excel文件

我是一个Python新手所以请原谅这个基本的问题。 我的.xlsx文件看起来像这样 Unnamend:1 A Unnamend:2 B 2015-01-01 10 2015-01-01 10 2015-01-02 20 2015-01-01 20 2015-01-03 30 NaT NaN 当我使用pandas.read_excel(…)在Python中读取它时,pandas会自动使用第一列作为时间索引。 是否有一句话告诉大pandas注意到,每一列都是属于时间序列的时间索引? 所需的输出将如下所示: date AB 2015-01-01 10 10 2015-01-02 20 20 2015-01-03 30 NaN

如果df或groupby为空白,如何打印“Nothing here”以显示出色?

我正在计算一些指标,并将其打印到excel中使用 writer = pd.ExcelWriter('File.xlxs', engine = 'xlsxwriter') 'metric'.to_excel(writer, sheetname = 'x') 有时我的指标将是空白的(例如,filter已经过滤了所有东西)。 有没有办法打印出优秀的,让我打印“这里没有”,如果指标是空白使用xlsxwriter方法?

删除pandas行中的一部分/增加行的一部分? alignment列标题

所以我有一个数据框,我想要的标题目前不排队: In [1]: df = pd.read_excel('example.xlsx') print (df.head(10)) Out [1]: Portfolio Asset Country Quantity Unique Identifier Number of fund B24 B65 B35 B44 456 2 General Type A UNITED KINGDOM 1 123 3 General Type B US 2 789 2 General Type C UNITED KINGDOM 4 4852 4 General Type C UNITED KINGDOM 4 654 […]

用pandas处理Excel文件

我试图读Pandas的Excel文件。 我只想读第2列到第4列。 我试图跳过前9行的阅读。 即使使用skiprows=8, parse_col=["B:D"],存储在df数据看起来与传入的excel文件相同,并且不排除前9行或排除期望的列。 我的语法有什么问题,为什么不是数据库结构存储在dfinput的Excel文件减去9行和几列? 我的传入数据如下: Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,Null,Null,Null,Null,Null Null,Null,Null,Null,String1,String2,Null,Null,Null Null,Phase to Phase Voltage,A – B,210.0,C – A,211.0,B – C,212.0 Null,Circuit/Breaker,Number,Internal Meter Amps,External Meter Amps,Measured Difference,% Difference,Location Identifier,Total Location Amperage,Comments Null,Main Phase A,94.1,96.,2.8,3%,Null,Null,Null Null,Main Phase B,90.1,92.6,2.5,3%,Null,Null,Null Null,Main Phase C,91.9,92.1,0.2,0%,Null,Null,Null Null,Neutral,0.0,0.4,0.4,100%,Null,Null,Null Null,Ground 0.0,0.1,0.1,100%,Null,Null,Null Null,1,10.6,10.2,-0.4,-4%,Null,Null,Null Null,2,10.6,10.3,-0.3,-3%,Null,Null,Null …. 我的代码如下: import pandas as pd […]

从Excel到pandas的Csv中压平表

我试图从Excel中的表中获取数据,并将其放入单行的csv中。 我有从Excel中导入的数据使用pandas的数据框,但现在,我需要将这些数据写入一个csv的单行。 这是可能的,如果是这样的话,如果我正在采取一个50行3列表,并将其展平为1行150列csv表,语法会是什么样子? 我的代码到目前为止如下: import pandas as pd df = pd.read_excel('filelocation.xlsx', sheetname=['pnl1 Data ','pnl2 Data','pnl3 Data','pnl4 Data'], skiprows=8, parse_cols="B:D", keep_default_na='FALSE', na_values=['NULL'], header=3) DataFrame.to_csv("outputFile.csv" ) 另一个问题,我会帮助我理解如何转换这些数据是“有什么办法从特定的行和列中select一个数据”?

写一个pandasdf到Excel并保存到一个副本

我有一个pandas数据框,我想打开一个包含公式的现有Excel工作簿,将数据框复制到一组特定的列中(可以从列A到列H),并将其另存为具有不同名称的新文件。 这个想法是更新一个现有的模板,使用指定的一组列中的数据框填充它,然后用不同的名称保存一个Excel文件的副本。 任何想法? 我拥有的是: import pandas from openpyxl import load_workbook book = load_workbook('Template.xlsx') writer = pandas.ExcelWriter('Template.xlsx', engine='openpyxl') writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) df.to_excel(writer) writer.save()

附加一个循环的数据框

早上, 我有3个擅长,我通过从Excel导入。 我正在尝试创build一个从每个导入名称('Ticker')列的DataFrame,添加Excel('Secto')的标题,并将其附加到eachother以创build一个新的DataFrame。 这个新的DataFrame将被导出到Excel。 AA = ['Aero&Def','REITs', 'Auto&Parts'] File = 'FTSEASX_'+AA[0]+'_Price.xlsx' xlsx = pd.ExcelFile('C:/Users/Ben/'+File) df = pd.read_excel(xlsx, 'Price_Data') df = df[df.Identifier.notnull()] df.fillna(0) a = [] b = [] for i in df['Ticker']: a.append(i) b.append(AA[0]) raw_data = {'Ticker': a, 'Sector': b} df2 = pd.DataFrame(raw_data, columns = ['Ticker', 'Sector']) del AA[0] for j in AA: File = […]

使用Difflib合并Excel工作表

我一直在试图根据自己的名称列合并两个Excel表。 我用这个作为参考。 在df1中,名称列是Local Customer df2,名称列是Client import difflib import pandas as pd path= 'C:/Users/Rukgo/Desktop/Match thing/' df1=pd.read_excel(path+'2015_TXNs.xls') df2=pd.read_excel(path+'Pipeline.xls') df2['Client'] = df2['Client'].apply(lambda x: difflib.get_close_matches(x, df1['Local Customer'])[0]) result = df1.join(df2) result.to_excel(path+'maybe.xls') 虽然当我运行这个我得到一个以下错误: File "C:/Users/Rukgo/Desktop/Match Things/untitled3.py", line 16, in <lambda> df2['Client'] = df2['Client'].apply(lambda x: difflib.get_close_matches(x, df1['Local Customer'])[0]) IndexError: list index out of range