草庐IT

DATETIME

全部标签

python - 将不规则的时间戳测量值转换为等间隔的时间加权平均值

我有一系列带有时间戳且间隔不规则的测量值。这些系列中的值始终代表测量的变化——即没有变化就没有新值。此类系列的一个简单示例是:23:00:00.1001023:00:01.200823:00:01.600023:00:06.3004我想要达到的是一系列等间隔的时间加权平均值。对于给定的示例,我可能会以基于秒的频率为目标,因此结果如下所示:23:00:01NaN(thefirst100msaremissing)23:00:025.2(10*0.2+8*0.4+0*0.4)23:00:03023:00:04023:00:05023:00:062.8(0*0.3+4*0.7)我正在寻找解决该

python - Pandas :有条件的转变

有一种方法可以根据其他两列的条件来移动数据框列吗?像这样的东西:df["cumulated_closed_value"]=df.groupby("user").['close_cumsum'].shiftWhile(df['close_time']>df['open_time])我已经找到了一种方法来做到这一点,但效率很低:1)加载数据并创建要移动的列df=pd.read_csv('data.csv')df.sort_values(['user','close_time'],inplace=True)df['close_cumsum']=df.groupby('user')['valu

python - Pandas :有条件的转变

有一种方法可以根据其他两列的条件来移动数据框列吗?像这样的东西:df["cumulated_closed_value"]=df.groupby("user").['close_cumsum'].shiftWhile(df['close_time']>df['open_time])我已经找到了一种方法来做到这一点,但效率很低:1)加载数据并创建要移动的列df=pd.read_csv('data.csv')df.sort_values(['user','close_time'],inplace=True)df['close_cumsum']=df.groupby('user')['valu

python - 如何调整时区的 `strftime`?

我像这样存储我的日期时间intUTC:importpytz,datetimetimeUTC=datetime.datetime(2013,5,23,19,27,50,0)timezoneLocal=pytz.timezone('Europe/Vilnius')timeLocal=timezoneLocal.localize(timeUTC)但是当我尝试打印它时,它只会给我正常的UTC时间>>>timeLocal.strftime('%H:%M:%S')'19:27:50'我希望它返回'22:27:50'因为这是本地时间(pytz.timezone('Europe/Vilnius')是+

python - 如何调整时区的 `strftime`?

我像这样存储我的日期时间intUTC:importpytz,datetimetimeUTC=datetime.datetime(2013,5,23,19,27,50,0)timezoneLocal=pytz.timezone('Europe/Vilnius')timeLocal=timezoneLocal.localize(timeUTC)但是当我尝试打印它时,它只会给我正常的UTC时间>>>timeLocal.strftime('%H:%M:%S')'19:27:50'我希望它返回'22:27:50'因为这是本地时间(pytz.timezone('Europe/Vilnius')是+

python - 如何判断 Pandas 数据框中的列是否属于日期时间类型?如何判断列是否为数字?

我正在尝试根据它们是否属于日期类型来过滤pandas数据框中的列。我可以找出哪些是,但随后必须解析该输出或手动选择列。我想自动选择日期列。这是我到目前为止的示例-在这种情况下我只想选择“date_col”列。importpandasaspddf=pd.DataFrame([['Feb-2017',1,2],['Mar-2017',1,2],['Apr-2017',1,2],['May-2017',1,2]],columns=['date_str','col1','col2'])df['date_col']=pd.to_datetime(df['date_str'])df.dtypes输

python - 如何判断 Pandas 数据框中的列是否属于日期时间类型?如何判断列是否为数字?

我正在尝试根据它们是否属于日期类型来过滤pandas数据框中的列。我可以找出哪些是,但随后必须解析该输出或手动选择列。我想自动选择日期列。这是我到目前为止的示例-在这种情况下我只想选择“date_col”列。importpandasaspddf=pd.DataFrame([['Feb-2017',1,2],['Mar-2017',1,2],['Apr-2017',1,2],['May-2017',1,2]],columns=['date_str','col1','col2'])df['date_col']=pd.to_datetime(df['date_str'])df.dtypes输

Python 2 - 你会如何向上/向下舍入到最近的 6 分钟?

有很多人四舍五入到最接近的十分钟的例子,但我无法弄清楚四舍五入到最接近的六分钟背后的逻辑。我以为这只是切换几个数字的问题,但我无法让它工作。我正在使用的代码位于myGithub.我得到的block甚至还没有接近工作(不会提供任何输出)是:defcompanyTimer():ifminutes%6>.5:companyMinutes=minutes+1elifminutes%6现在看,我发现我的逻辑是不正确的-即使它可以工作,代码的加减1分钟部分也没有意义。无论如何,我不知道如何解决这个问题-有人能给我指出正确的方向吗?PS-这是我在工作中供个人使用的东西..不是在我的工作中寻求帮助,但

Python 2 - 你会如何向上/向下舍入到最近的 6 分钟?

有很多人四舍五入到最接近的十分钟的例子,但我无法弄清楚四舍五入到最接近的六分钟背后的逻辑。我以为这只是切换几个数字的问题,但我无法让它工作。我正在使用的代码位于myGithub.我得到的block甚至还没有接近工作(不会提供任何输出)是:defcompanyTimer():ifminutes%6>.5:companyMinutes=minutes+1elifminutes%6现在看,我发现我的逻辑是不正确的-即使它可以工作,代码的加减1分钟部分也没有意义。无论如何,我不知道如何解决这个问题-有人能给我指出正确的方向吗?PS-这是我在工作中供个人使用的东西..不是在我的工作中寻求帮助,但

python - 将字符串 'yyyy-mm-dd' 转换为日期时间

这个问题在这里已经有了答案:Convertstring"Jun120051:33PM"intodatetime(26个答案)关闭7年前。我有来自用户的原始输入,例如“2015-01-30”...对于我正在使用的查询,日期必须作为字符串输入,例如“yyyy-mm-dd”。我想在循环结束时将日期增加1个月s.t“2015-01-30”变为“2015-02-27”(最好是下个月的最后一个工作日)。我希望有人能帮助我;我正在使用PYTHON,我想转换为日期时间的原因是我找到了一个添加1个月的函数。理想情况下,我要回答的两个问题是(在Python中):1)如何将字符串"yyyy-mm-dd"转换