草庐IT

python - Pandas 在 Groupby 中重新索引日期

我有一个以零星日期作为索引的数据框,列='id'和'num'。我想pd.groupby'id'列,并将重新索引应用于数据框中的每个组。我的示例数据集如下所示:idnum2015-08-01132015-08-05152015-08-06142015-07-31212015-08-03222015-08-0623使用ffillpd.reindex后我的预期输出是:idnum2015-08-01132015-08-02132015-08-03132015-08-04132015-08-05152015-08-06142015-07-31212015-08-01212015-08-02212

python - Pandas :时间戳系列中的唯一天数

我有将近3,000,000行的PandasDataFrame。其中一列称为TIMESTAMP,属于datetime64类型。时间戳格式如下:2015-03-3122:56:45.510我的目标是计算收集数据的天数。我最初的方法很简单:(df.TIMESTAMP.max()-df.TIMESTAMP.min()).days但是,我发现这可能并不总是正确的,因为不能保证每天都收集数据。相反,我尝试使用map和apply计算时间戳系列中的唯一天数,并且两者都需要相当长的时间来处理3,000,000行:%timeitlen(df['TIMESTAMP'].map(lambdat:t.date(

python - 将字符串转换为日期 [含年份和季度]

我有一个pandas数据框,其中一列包含以下格式的年份和季度字符串:2015Q1我的问题:如何将其转换为两个日期时间列,一个用于年份,一个用于季度。 最佳答案 您可以使用split,然后将year列转换为int并在必要时将Q添加到q列:df=pd.DataFrame({'date':['2015Q1','2015Q2']})print(df)date02015Q112015Q2df[['year','q']]=df.date.str.split('Q',expand=True)df.year=df.year.astype(int)d

python - 获取 python 模块到 Visual Studio 2015 Community Edition

Microsoft将简单的问题变难了。如何在我的PythonVisualStudioCommunity版本上安装sqlite3或Pmw。我通常将自己的文件放入站点包文件夹中。在VisualStudio中,他们谈论数据包管理器,但它在哪里?真的有这么难吗? 最佳答案 希望您已经安装了PythonToolsforVisualStudio插件。如果没有,请转到https://github.com/Microsoft/PTVS获得v2.2。您还可以查看PTVSGettingStartedtutorialseries在YouTube上。假设您

python - 如何按条件简化字典列表?

我有日期对象的字典列表:{"begin":dateobject1,"end":dateobject2}....{"begin":dateobject3,"end":dateobject4}我想按条件简化此列表:ifcur.end==next.begin-datetime.timedelta(seconds=1))cur.end=next.enddeletenext怎么做? 最佳答案 就像在另一个答案中解释的那样,您不应该在遍历列表时从列表中删除一个元素,这会导致很多问题。另一种创建全新列表的方法是-importdatetimelis

python - 两个设备故障之间的日期差异

我正在尝试计算失败之间的天数。我想知道系列中的每一天自上次失败以来经过的天数,其中failure=1。可能有1到1500台设备。例如,我希望我的数据框看起来像这样(请在第二个代码块中从url中提取数据。这只是一个较大数据框的简短示例。):datedevicefailureelapsed10/01/2015S1F0KYCR1010/07/2015S1F0KYCR1710/08/2015S1F0KYCR0010/09/2015S1F0KYCR0010/17/2015S1F0KYCR11110/31/2015S1F0KYCR0010/01/2015S8KLM0111010/02/2015S8

python - Pandas TimeSeries 重采样产生 NaN

我正在对PandasTimeSeries进行重采样。时间序列由二进制值(它是一个分类变量)组成,没有缺失值,但在重新采样后出现NaN。这怎么可能?我不能在这里发布任何示例数据,因为它是敏感信息,但我按如下方式创建和重新采样该系列:series=pd.Series(data,ts)series_rs=series.resample('60T',how='mean') 最佳答案 upsampling转换为固定时间间隔,因此如果没有样本,您将得到NaN。您可以通过fill_method='bfill'或正向填充缺失值-fill_metho

VS2015项目.net-framework-4.5.2升级或新建项目无法选择framework 4.6.2(解决办法)

VS2015里面没有.NETFramework4.6.2VS2015默认安装的目标框架最高是.NETFramework4.6.1,但是我的项目里面某些NuGet软件包更新需要依赖.NETFramework4.6.2,项目就需要升级到目标框架.NETFramework4.6.2VS2015项目无法选择framework4.6.2的解决办法:第一步:系统环境安装.NETFramework4.6.2官网下载地址Download.NETFramework4.6.2:https://dotnet.microsoft.com/zh-cn/download/dotnet-framework/net462建议

python - Pandas 在 `datetime` 或 `datetime` 合并到 `datetimeIndex`

目前我有两个代表excel电子表格的数据框。我希望加入日期相等的数据。这是一对多连接,因为一个电子表格有一个日期,然后我需要添加具有相同日期的多行数据一个例子:ABdatedatadatedata02015-0-1...02015-0-1to2015-0-2...12015-0-2...12015-0-1to2015-0-2...在这种情况下,A的两行都将收到B的第0行和第1行,因为它们都在该范围内。我试过用df3=pandas.merge(df2,df1,how='right',validate='1:m',left_on='TravelDate/Range',right_on='E

python - Pandas 和 Rolling_Mean with Offset(平均每日交易量计算)

当我将股票数据从Yahoo提取到数据框中时,我希望能够计算5天的平均交易量,不包括当前日期。有没有办法使用带有偏移量的滚动均值?例如,5天表示不包括当前日期并基于前5天。当我运行下面的代码时r=DataReader("BBRY","yahoo",'2015-01-01','2015-01-31')r['ADV']=pd.rolling_mean(r['Volume'],window=5)它返回5天的交易量,包括当前日期,所以当您查看下面的内容时,1/8具有1/2、1/5、1/6、1/7和1/的平均交易量8.我希望1/9是第一个返回平均交易量的日期,它包含来自1/2、1/5、1/6、1/