Tag: 数据框

在pandas数据框中修复date

场景:我正在使用python代码从excel文件中提取数据。 目前我的代码读取每个文件到一个单一的数据框,并join到数据框的列表中。 问题:原始的Excel源文件按列(date)和标识符(行)组织。 其中一些文件的date格式为string,如20170611或11062015。 我到目前为止的尝试:从以前的研究中,我发现了一些关于这个主题的问题和答案,但是他们都提到了一个转换,例如: datetime.datetime.strptime('24052010', "%d%m%Y").date() datetime.date(2010, 5, 24) 这是我需要的操作,但是我想在一个循环中为受影响的文件的所有列标题执行它。 问:是否可以这样做? 如何做呢? Obs:我想通过一些代码来select那些受影响的代码,但是由于我不知道如何去做,所以我会手工select文件并且单独修改。 所以我的目标只是循环列和修复这些文件的date。 从Excel获取数据的当前代码: import pandas as pd import numpy as np import matplotlib.pyplot as plt import glob, os import datetime as dt from datetime import datetime import matplotlib as mpl directory = os.path.join("C:\\","Users\\DGMS\\Desktop\\final 2") list_of_dfs = [] for root,dirs,files in os.walk(directory): for […]

将Excel导入pandas数据框

以下仅是Coursera关于数据科学作业的开始。 我希望这不是微不足道的。 但是我迷失在此,无法find答案。 我被要求将一个Excelfile导入到一个pandas数据框中并在之后进行操作。 该文件可以在这里find: http : //unstats.un.org/unsd/environment/excel_file_tables/2013/Energy%20Indicators.xls 是什么让我很难 a)有17行和页脚的“开销”b)前两列是空的c)索引列没有标题名称 几个小时,如果seraching和阅读我想出了这个无用的线: energy=pd.read_excel('Energy Indicators.xls', sheetname='Energy', header=16, skiprows=[17], skipfooter=38, skipcolumns=2 ) 这似乎产生了一个多索引数据框。 尽pipe命令energy.head()不返回任何内容。 我有两个问题: 我错了什么 直到这个练习,我想我理解数据框。 但现在我完全无能为力,迷失了: – (( 我该如何解决这个问题? 我需要做些什么才能把这个Exceldata变成一个由国家指数组成的数据组? 谢谢。

dataframe名称R

我通过read.cv2()函数在R中导入一个.csv文件(来自Excel 2010)。 我得到一个dataframe 。 我的专栏名称应该是date,但我得到像X08.03.2013 。 我有几个问题: 如何将这些名称设置为date格式(同名行)? 对于列,一旦我获得了date格式,如何在这些date使用条件(if)? 我希望我已经清楚了。 感谢您的帮助。

Pythonpandas数据框“date”在xlsx和csv中索引不同的格式

我有一个带有多个选项卡的xlsx文件,每个选项卡都有一个格式为MM/DD/YYYY的Date列 将每个选项卡读入pandas数据框,在每个选项卡上应用一些操作,然后将数据框写回到两种格式:xlsx和csv 在xlsx文件中, Date列(索引)变成附加时间的格式: 1/1/2013 12:00:00 AM ,而csv文件中的Date列保持不变: MM/DD/YYYY 如何确保xlsx文件中的Date列保持相同的格式MM/DD/YYYY ?

Python:将Excel数据转换为数据框

我想把一些excel文件中的数据放入Python的数据框中。 我使用的代码如下(我用来读取一个excel文件的两个例子): d=pd.ExcelFile(fileName).parse('CT_lot4_LDO_3Tbin1') e=pandas.read_excel(fileName, sheetname='CT_lot4_LDO_3Tbin1',convert_float=True) 问题是,我得到的数据框只有逗号后的两个数字的值。 换句话说,excel值就像0.123456,我得到的dataframe值为0.12。 一轮或类似的事情似乎已经完成,但我找不到如何改变它。 谁能帮我? 谢谢您的帮助 !

根据工作表名称在多个Excel工作簿中创buildfor循环中的数据框?

我有一个数百个Excel文件的文件夹,每个工作簿中都有九个相同的文件夹。 我正在运行下面的代码遍历文件,并为所有工作簿中的每个工作表创build一个数据框(因此dataframe“sheet_a_df”将从连接到单个数据框的每个工作簿中打印出“a”)。 sheet_a_df = pd.DataFrame() for file in glob.glob('C:\\Users\*.xlsx'): df = pd.read_excel(file,sheetname='a') sheet_1_df = sheet_1_df.append(df,ignore_index=True).dropna() sheet_b_df = pd.DataFrame() for file in glob.glob('C:\\Users\\*.xlsx'): df = pd.read_excel(file,sheetname='b') sheet_b_df = sheet_b_df.append(df,ignore_index=True).dropna() # And so on for all nine sheet names… 但是,这需要复制并粘贴代码九次(每个表单一次)。 有没有更适当的方法来做到这一点? 回顾一下这个问题 ,我理解字典是在for循环中创build多个数据框的方法。 我也试图根据工作表名称命名每个df 。 我创build了我的工作表名称列表,并尝试了下面的代码,但得到一个KeyError,它只是返回第一个工作表的名字。 sheet_names = ['a', 'b', 'c', …,] df_dict = {} for file […]

如何获取python索引值(多索引)

我正在创build一个工具来比较两个数据框,并返回有关excel文件差异的详细信息。 具有差异的报告示例,其中TC代表包含差异的testing用例,字段列表示包含差异的字段的名称: TC Fields Baseline New output 1 B 34 28 C 4 25 3 C 5 28 5 B 7 23 C 8 2 D 6 24 基准文件(基准df): TC ABCD 1 22,00 27,00 24,00 25,00 2 23,00 34,00 4,00 27,00 3 24,00 2,00 27,00 28,00 5 25,00 2,00 5,00 2,00 6 27,00 22,00 2,00 […]

使用xlsxwriter将pandasdf写入excel文件?

我已经脚本编写pandasdf到excel文件与openpyxl。 请参阅将pd数据框填入现有的Excel表(使用openpyxl v2.3.2) 。 from openpyxl import load_workbook import pandas as pd import numpy as np book=load_workbook("excel_proc.xlsx") writer=pd.ExcelWriter("excel_proc.xlsx", engine="openpyxl") writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) data_df.to_excel(writer, sheet_name="example", startrow=100, startcol=5, index=False) writer.save() 该过程正常工作。 但是,每个返回的excel文件在打开时报告它已损坏,因为内容不可读。 Excel可以修复它并再次保存。 但这必须手动完成。 由于我必须处理许多文件,我如何解决/规避? 或者,我该如何更改代码才能使用“xlsxwriter”而不是“openpyxyl”? 当我只是用“engine =”xlsxwriter“”“交换”engine =“openpyxl”“时,python告诉我”'Worksheet'对象在data_df.to_excel行没有'write'属性。 另外:Excel告诉我“删除logging名为范围/ xl / workbook.xml部分”是腐败,必须修复。 我不知道,这是什么意思

从另一列的df栏中更改列

我有数据: date id 0 2016-06-17 06:25:05 yans.bouts@yandex.ru 1 2016-06-17 06:25:07 yans.bouts@yandex.ru 2 2016-06-17 06:25:10 titovtanya@yandex.ru 3 2016-06-17 06:25:11 titovtanya@yandex.ru 其他数据 Email,UTC shift yans.bouts@yandex.ru,5 inkin_sam@mail.ru,3 titovtanya@yandex.ru,3 dasha.dasha.kovaleva@mail.ru,2 我需要将UTC shift添加到第一个文件date到hours 。 欲望输出: date id 0 2016-06-17 11:25:05 yans.bouts@yandex.ru 1 2016-06-17 11:25:07 yans.bouts@yandex.ru 2 2016-06-17 09:25:10 titovtanya@yandex.ru 3 2016-06-17 09:25:11 titovtanya@yandex.ru 我将date转换为date时间,但我不知道如何将UTC shift为小时。

Python – 使用pandas来格式化Excel单元格

我有一个pandas数据框,就像下面显示的那样。 我想格式化列“通过/失败”, if Fail –> red background, else green background ,如: 我曾尝试使用pandas来进行格式化,但是无法为excel添加颜色。 以下是代码: writer = pandas.ExcelWriter(destination,engine = 'xlsxwriter') color = Answer.style.applymap(lambda x: 'color: red' if x == "Fail" else 'color: green',subset= pandas.IndexSlice[:,['Pass/Fail']]) color.to_excel(writer,'sheet1') 我尝试了StyleFrame安装失败。 似乎StyleFrame不符合我的python版本3.6。 我如何根据需要设置excel的格式?