Tag: pandas

循环和groupby列值

我有以下的DataFrame: STOP_SEQ STOP_ID Bearing 6 82207 S 6 82207 S 7 82216 S 7 82216 S 7 82216 S 7 82216 S 7 82216 S 7 82216 S 7 82216 S 7 82216 S 7 82216 S 3 23770 N 3 23770 N 3 23770 N 3 23770 N 6 82207 S 6 82207 S […]

只读取某些列

我只想从excel文件中读取某些列成pandas数据框。 我想通过usecols通过列范围指定这个来指定这个,但是我面临一个错误。 什么是正确的方式来指定列的范围为字母(是的,我知道我可以提供列的指示,而不是)? import pandas as pd df = pd.read_excel("test.xlsx", usecols="A:AV", header=None) 在read_excel(io,sheetname,header,skiprows,skip_footer,index_col,names,parse_cols,parse_dates,date_parser,na_values,数千,convert_float中,〜/ anaconda3 / lib / python3.5 / site-packages / pandas / io / has_index_names,converters,dtype,true_values,false_values,engine,squeeze,** kwds)207 skip_footer = skip_footer,转换器=转换器,dtype = dtype,208 true_values = true_values,false_values = false_values,squeeze = squeeze, – > 209 ** kwds)210 211 〜/ anaconda3 / lib / python3.5 / site-packages / pandas […]

Pythonpandas不能读取一些奇怪的编码和拆分窗格旧的Excel文件

我正在尝试将一个旧的Excel文件导入pandas。 该文件是由cropSyst软件使用旧格式(我不知道)生成的,它默认情况下有分割窗格。 这是一个快照 一个解决scheme可以是用excel打开文件并将其保存在xlsx中:这样pandas可以毫无问题地读取它,但是我必须处理大量的文件(> 40000),所以这是不可行的。 当试图用pandasimport它 pd.read_excel(filename) 我得到这个错误 error: unpack requires a string argument of length 3 *** No CODEPAGE record, no encoding_override: will use 'ascii' 我也试着把它导入为csv pd.read_csv(filename) 但它只读取一些数据,我尝试使用行分隔符和单元格分隔符的不同组合,没有运气。 你有什么build议吗? 编辑 正如@jmcnamara在评论中所build议的,我尝试用Python中所有可用的编码来覆盖文件的编码,但仍然没有运气:它不能正确parsing文件。 这里可以下载一个xls文件 https://drive.google.com/file/d/0B5smcFuBd6EtdFE5eEktZXZVTkU/view?usp=sharing

我怎么能插入一个数据框在Excel中使用xlwings没有pywintypes.com_error?

我正在使用Excel和xlwings。 我有一个book.xlsm,在第一个表单上有一个button分配给以下vba代码: book.xlsm!ThisWorkbook.get_data 在VBA上,我添加了这个button被调用并执行vba代码时,它运行: Sub get_data() RunPython ("import my_script; my_script.get_data()") End Sub my_script如下: import pandas as pd from xlwings import Workbook, Range def get_data(): wb = Workbook.caller() df = pd.read_csv("data.csv") Range("Sheet2", "A1").value = df 我遇到的问题如下: pywintypes.com_error: (-2147024882, 'Not enough storage is available to complete this operation.', None, None) data.csv文件有150000行和120行。 使用更less的数据运行没有错误。 更新:目前没有解决scheme,但有一个解决方法提供的意见: https : //github.com/ZoomerAnalytics/xlwings/issues/77 我使用以下内容: […]

pandas pd.ExcelWriter和xlrd输出python数据框为excel文件

我可以使用显示打印数据框(它显示和它是正确的),但是当我输出相同的数据框到Excel文件,我找不到该文件? 我的代码是: from pandas import ExcelWriter import xlrd import openpyxl writer = pd.ExcelWriter('workbook_name.xlsx') merged_data.to_excel(writer,'sheet_name')

重复pandas数据框行标签

有没有办法重复pandas数据框的行标签? 我使用xlsxwriter创build的Excel输出目前不会在更高级别重复分组。 我感谢任何帮助。 我的Excel工作performance在如何: Country State/Province Population US Califonia 38,802,500 Texas 26,956,958 Florida 19,893,297 … CAN Alberta 3,645,257 Manitoba 4,400,057 我希望输出具有重复的国家级标签,如下所示 Country State/Province Population US California 38,802,500 US Texas 26,956,958 US Florida 19,893,297 … CAN Alberta 3,645,257 CAN Manitoba 4,400,057

添加超链接到由pandas dataframe to_excel方法创build的excel表单

我已经使用df.to_excel将pandas DataFrame转换为Excel工作表。 现在,我想添加超链接到一列中的值。 换句话说,当客户看到我的Excel表单时,他将能够点击一个单元格并调出一个网页(取决于该单元格中的值)。

python pandas:导出数据框后手动写入相同的Excel

我以这种方式将数据框导出到Excel中: import pandas as pd df=pd.DataFrame( data= np.ones((4,2)), columns=['x','y']) writer = pd.ExcelWriter('output.xlsx') sheet='Test' df.to_excel(writer,sheet) writer.save() 我怎样才能让python在数据框的右边写几行描述? 就像这样:“这个dataframe包含了bla bla bla”。 特别: 我可以用pandas来写同一张纸吗? 或者我必须在writer.save()之后使用另一个模块? 保存和重新开放似乎是浪费时间和资源 如果我不能使用pandas,我该用什么模块? xlsxwriter不能修改现有的文件。

如何折叠多列pandas

我有这样的数据,并使用pandas/ Excel的/ python。 ABCD Bus Car Plane Car Boat Car Boat Car Plane 我试图让我的数据是这样的: ABCD Bus Car Plane Car Boat Car Boat Car Plane 值(string)的位置取决于单元格是否为空。 我已经看了df.max,但它似乎并没有迎合多个列以及如何折叠pandas数据框的其他build议 我不想连接string,只是把所有的东西都转移过来。 我看到一个使用“R”和融化的方法,但是如果可能的话,我想坚持使用python / pandas。 谢谢。

如何比较date从Excel工作表上的值填写python的目的

我有一个2张工作表的Excel文件。 一张包含数据的表格: DATE TMAX TMIN 20110706 317 211 20110707 322 211 20110708 317 211 20110709 322 211 20110710 328 222 20110711 333 244 20110712 356 250 20110713 356 222 另一张纸包括: Start Date End Date Rep Month Cost kWh kW 7/6/2011 8/3/2011 July 5,065.17 76,640 205 8/3/2011 9/7/2011 August 5,572.38 86,640 195 我的目标是根据第一张纸上的date是否落在一定的千瓦时范围内,在第二张上写下另一列(千瓦时)。 举一个例子: DATE TMAX […]