我试图使用具有不同大小的几个索引变量的PYOMO来求解MIP.我想做的是将变量的结果导出到数据范围,以便我可以进一步分析这些结果.我的问题是,我无法找到一种很好地自动化该过程的方法,因为索引变量的大小可以在每个模型模拟中更改. . 这是我要创建的一些变量的示例: import pyomo.environ as pyo model = pyo.ConcreteModel() model.T = pyo.RangeSet(0, 10) model.Generators = pyo.Set(initialize=(['equip_1', 'equip_2'])) model.Storages = pyo.Set(initialize=(['storage_1', 'storage_2'])) model.var_1 = pyo.Var(model.T, model.Generators, domain=pyo.NonNegativeReals) model.var_2 = py
以下是关于 multi-index 的编程技术问答
嗨,有一个多索引数据框: tuples = [('YTA_Q3', 1), ('YTA_Q3', 2), ('YTA_Q3', 3), ('YTA_Q3', 4), ('YTA_Q3', 99), ('YTA_Q3', 96)] # Index index = pd.MultiIndex.from_tuples(tuples, names=['Questions', 'Values']) # Columns columns = pd.MultiIndex.from_tuples([('YTA_Q3', '@')], names=['Questions', 'Values']) # Data data = [29.014949,5.0260590000000001, 6.6269119999999999, 1.3565260000000001, 41.632221999999999, 21.279499999999999] df1 = pd.DataFrame(da
我一直在尝试弄清楚如何在pandas中制作这些元组索引键,但是我遇到了一个错误. 如何使用下面的pd.Categorical中的错误中的建议来解决此错误? 我知道我可以转换为字符串,但我很好奇地看到错误消息中的建议是什么? 当我使用0.22.0运行它时,这很好.我已经打开了一个我想更新熊猫并适当处理此问题. 使用当前的熊猫0.23.4:运行此操作: import sys; sys.version # '3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 12:04:33) \n[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)]' import pandas as pd; pd.__version__ # '0.23.4' index = [(('criterion', 'gini'), ('max_features', 'log2'), ('min_sampl
我有UTC中带有时间戳记的数据.我想将此时间戳的时区转换为"我们/太平洋",并将其作为层次索引添加到pandas dataframe.我已经能够将时间戳转换为索引,但是当我尝试将其添加到数据框中时,它会丢失时区格式,无论是列或索引. >>> import pandas as pd >>> dat = pd.DataFrame({'label':['a', 'a', 'a', 'b', 'b', 'b'], 'datetime':['2011-07-19 07:00:00', '2011-07-19 08:00:00', '2011-07-19 09:00:00', '2011-07-19 07:00:00', '2011-07-19 08:00:00', '2011-07-19 09:00:00'], 'value':range(6)}) >>> dat.dtypes #datetime object #label object #value int
这太奇怪了,老实说,我想知道我是否只是在误解了事情. 我有一些代码可以从DateTime值中构建多指数,但是在生成多指数之后,该类型已更改为时间戳. 我希望它留下来.我为什么要关心?好吧,代码的另一部分以与同一数据的方式略有不同的方式生成多指数(是的,我通过直接比较值检查了). 最小代码示例: import datetime import pandas as pd import numpy as np iterables = [['bar', 'baz', 'foo', 'qux'], [datetime.date(2014, 10, 3)]] columns = pd.MultiIndex.from_product(iterables) df = pd.DataFrame(np.random.randn(4, 4),columns = columns) 这给出了: >>> df.columns[0] ('bar', Timestamp('201
我需要重塑看起来像DF1的数据框架并将其转换为DF2.此过程有2个考虑因素: 我需要能够将要切成纪录的行数设置为参数(长度). 我需要将日期和时间与索引分开,并将日期用作列名中的日期,并将时间保留为索引. 当前DF1 2007-08-07 18:00:00 1 2007-08-08 00:00:00 2 2007-08-08 06:00:00 3 2007-08-08 12:00:00 4 2007-08-08 18:00:00 5 2007-11-02 18:00:00 6 2007-11-03 00:00:00 7 2007-11-03 06:00:00 8 2007-11-03 12:00:00 9 2007-11-03 18:00:00 10 所需的输出DF2-带有参数'长度= 5' 2007-08-07 2007-11-02 18:00:00 1
我有一些时间表数据作为PANDAS数据框架,该数据框架是在过去15分钟和过去45分钟(30分钟的时间间隔)时期的观察开始,然后将频率更改为每分钟.我想将数据重新采样,以使其具有每30分钟的正常频率,在过去的15分钟和45个时间的时间为45个. 我想到了两种实现这一目标的方法. 1.只需使用时间序列数据作为DataFrame中的列过滤到15分钟和45分钟处的所有观察结果的数据框. 2.重新设置索引,以便时间序列数据是多指数的一部分(索引的0级是气象站,第一级是观察时间的时间),并使用PANDAS DATE DATE TIME时间表诸如resample(). 之类的功能 原始数据框,天气,看起来像这样: parsed_time Pressure Temp Hum Station (index) Bow 1 2018-04-15 14:15:00 1012 20.
我已经寻找了这个问题的答案,因为它看起来很简单,但还找不到任何东西.很抱歉我错过了什么.我有熊猫版本0.10.0,我一直在尝试以下形式的数据: import pandas import numpy as np import datetime start_date = datetime.datetime(2009,3,1,6,29,59) r = pandas.date_range(start_date, periods=12) cols_1 = ['AAPL', 'AAPL', 'GOOG', 'GOOG', 'GS', 'GS'] cols_2 = ['close', 'rate', 'close', 'rate', 'close', 'rate'] dat = np.random.randn(12, 6) cols = pandas.MultiIndex.from_arrays([cols_1, cols_2], names=['ticker','field']) dftst
我正在用Styler格式化Pandas DataFrame,以突出显示列和格式编号.我还想应用多指数,以更清晰,愉快且易于阅读.由于我将造型器应用于列的子集,因此无法与多指数一起使用. 示例: arrays = [np.hstack([['One']*2, ['Two']*2]) , ['A', 'B', 'C', 'D']] columns = pd.MultiIndex.from_arrays(arrays) data = pd.DataFrame(np.random.randn(5, 4), columns=list('ABCD')) data.columns = columns import seaborn as sns cm = sns.light_palette("green", as_cmap=True) data.style.background_gradient(cmap=cm, subset=['A']) 是否可以将列进行子集,以便造型器可以工作.
我需要使用多索引与大维数据框架一起工作,因此我尝试创建一个数据框架来学习如何将其存储在HDF5文件中. 数据框是这样的:(在前2列中使用多索引) Symbol Date 0 C 2014-07-21 4792 B 2014-07-21 4492 A 2014-07-21 5681 B 2014-07-21 8310 A 2014-07-21 1197 C 2014-07-21 4722 2014-07-21 7695 2014-07-21 1774 我正在使用pandas.to_hdf,但是当我尝试在组中选择数据时,它会创建"固定格式存储": store.select('table','Symbol == "A"') 它返回一些错误,主要问题是此 Type
给定以下枢轴表: import pandas as pd import numpy as np df = pd.DataFrame( {'YYYYMM':[201603,201503,201403,201303,201603,201503,201403,201303], 'Count':[5,6,2,7,4,7,8,9], 'Group':['A','A','A','A','B','B','B','B']}) df['YYYYMM']=df['YYYYMM'].astype(str).str[:-2].astype(np.int64) t=df.pivot_table(df,index=['Group'],columns=['YYYYMM'],aggfunc=np.sum) t Count YYYYMM 2013 2014 2015 2016 Group A
我是Pandas的新手(0.16.1),并且需要在多索引中进行自定义排序,因此我使用分类. 我的多索引的一部分: Part Defect Own Кузов 504 ИП Кузов 504 Итого Кузов 504 ПС Кузов 505 ПС Кузов 506 ПС Кузов 507 ПС Кузов 530 ИП Кузов 530 Итого Кузов 530 ПС 我创建具有多索引级别的枢轴表[缺陷,自己].然后,我将"自己的"分类(请参阅问题的一部分)将其排序为[函数,пс,ÖClistim].但是,当我以"部分"为基础时,这也是基于"缺陷"级别的分类,然后用 对索引进行排序 pvt.sortlevel(0, inplace=True) "自己的"级别按字母顺序排序:[函数,函数,见].我如何在MultiIndex中自定义两个级别? p. S.我将"自己的"级别转换为分类代码:创建新
我现在正在大学学习数据挖掘课程,但我对多索引分类问题的陷入困境. 实际数据涉及大约100万部电影的评论,我正在尝试根据美国邮政编码进行分析,但是要测试如何做我想做的事情,我一直在使用较小的数据集250个随机生成的10部电影的评分,而不是邮政编码,而是使用年龄组. 所以这就是我现在拥有的,它是熊猫中的多索引数据框架,有两个级别,"组"和" title" rating group title Alien 4.000000 Argo 2.166667 Adults Ben-Hur 3.666667 Gandhi 3.200000 ... ... Alien 3.000000 Argo