我试图在价格图表的csv中找到给定时间段的价格价值。我已经使用pd.to_datetime函数将Datetime列转换为datetime数据,但是我似乎找不到一种方法可以让我按单独的日期、小时和分钟来筛选行。典型的行如下所示。 Datetime 2021-10-15 19:55:00-04:00
Open 40.15
High 40.2
Low 40.14
Close
我有一个数据框,其中包含一列日期和另一列,我想根据日期进行修改。但是,当我尝试使用.loc方法执行此操作时,我得到
TypeError: '<' not supported between instances of 'str' and 'datetime.datetime'
有没有人可以解释一下: 1)为什么会出现这个错误--日期是datetime对象,2)如何修改第二列。我在下面包含了一个MWE。
非常感谢
from datetime import datetime as DT
import numpy as np
import pan
我有一个excel文件,其中列名包含日期-时间值.
如您所见,标题值采用日期-时间格式。我已经将它加载到Pandas dataframe中,并且头值确实被保存为日期时间值。
现在,如果我需要从Pandas查询,“选择所有大于5月15日的列”,我如何做到这一点?
我知道,通过查询df[df.columns[3:]],我可以实现这一点。但是,我真的想根据列标题的值而不是根据列的位置进行切片。
请帮帮忙。
编辑:基于下面的答案,我找到了一种查询列值的方法。把它加在这里,供将来参考。
from datetime import datetime
df[[col for col in df.
我使用pandas.to_datetime来解析数据中的日期。默认情况下,Pandas使用datetime64[ns]表示日期,即使日期都是每天。我想知道是否有一种优雅/聪明的方法将日期转换为datetime.date或datetime64[D],这样,当我将数据写入CSV时,日期不会附加00:00:00。我知道我可以逐个元素地手动转换类型:
[dt.to_datetime().date() for dt in df.dates]
但这真的很慢,因为我有很多行,这有点违背了使用pandas.to_datetime的目的。有没有办法一次转换整个列的dtype?或者,pandas.to_datet
列名:时间戳
列dtype: Object
示例数据: 2017-12-01T00:02:39
import pandas as pd
from datetime import datetime
df['Timestamp'] = pd.to_datetime(df['Timestamp'], format='%Y/%m/%d %H:%M:%S')
ValueError: time data Timestamp doesn't match format specified
我在将时间戳列中的数据转换为datetime对象时遇到问题,然
我希望在t_list指定的时间段内每10分钟创建一个散点图。我在行TypeError: cannot compare a dtyped [datetime64[ns]] array with a scalar of type [bool]中得到了错误df_t = df[(df['datetime']>=t & df['datetime']<t_end)],但是t和t_end的类型都是datetime。这些变量中的非类型为bool。
import pandas as pd
import matplotlib.pyplot as
如何使用pandas向下面的脚本添加标头?标题/列= Date、B1、B2、B3。 from random import randint
import pandas_datareader.data as web
import pandas as pd
import datetime as dt
import itertools as it
import numpy as np
import csv
start = dt.datetime(1996, 12, 16)
end = dt.datetime(2019, 4, 2)
df = pd.read_csv('C:Users\Gr
我正在使用pandas来获取用户activitY的统计数据:
import pandas as pd
dataset = pd.read_csv('/content/drive/My Drive/Colab Notebooks/data.csv')
# data is a table with columns: src_id, time, requests
# time - represents time slots(30 s), when client was active
g = dataset.groupby("
在设置数据帧的参数(最大行数、最大列数)时存在问题。运行之后,dataframe隐藏了部分行和列。代码如下:
import pandas as pd
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
import pandas_datareader.data as web
import datetime as dt
start = dt.datetime(2018, 1, 1)
end = dt.dateti
我的pandas.DataFrame包含一个包含时间戳值的列。
我特别希望处理那些位于特定时间范围内的行,从开始时间到结束时间,忽略日期部分。
我尝试使用布尔数组作为索引来实现这一点:
import datetime
import pandas
from random import randrange as rr
# generate random timestamps
timestamps = [datetime.datetime(2000,1,1,rr(24),rr(60)) for i in xrange(100)]
# insert into DataFrame
df = panda
Hello! This is a CSV table.我尝试将CSV输出与Pyhton相结合来创建甘特图。CSV文件中的每一列都表示一个日期和时间,例如start1是小时和start2 -分钟。之后,我使用pd.to_datetime(data["start1"], format="%H")进行适当的格式化。start2也是如此。问题是:如何在pandas DataFrame中组合这两列,以获得"%H-%M"格式的一列?比如数据“start”。下面是data.head() output and代码: import numpy as np
imp
我尝试将两个DataFrames的索引都是DateTime值的两个pandas datetime序列DataFrames的值相减。
有问题的两个DataFrames具有相同数量的列。我想要从第一个DataFrame中的列的值中减去第二个DataFrame中的列中的值,以使用第二个DataFrame中表示的列的新减去的值创建一个新的DataFrame。
下面是我的数据:
import pandas as pd
import numpy as np
import statsmodels.api as sm
In[]: y
Out[]: price
Date
我从Yahoo!导入了五个股票投资组合。并需要创建一个包含所有股票2016年收盘价的DataFrame。但是,我很难用相应的股票名称来标记这些列。
import pandas.io.data as web
import pandas_datareader.data as web
import pandas as pd
from pandas import Series, DataFrame
import numpy as np
import datetime
start = datetime.datetime(2016, 1, 1)
end = datetime.datetime(2016
我的Pandas数据帧中有一个名为"date“的列,其中包含unix时间戳(int64)。我正在尝试迭代整个帧,从时间戳中提取月份和年份,并将它们添加到我的数据帧中。有了月份和年份后,我希望能够创建掩码,以便可以基于月份和年份将新数据帧保存到CSV。以下是我编写的代码: # import useful libraries
from datetime import datetime
import pandas as pd
# read csv as dataframe
df=pd.read_csv('./ct.csv')
# function to get year