我想在指定的时间戳范围内从数据帧中选择行的子集。
下面是我所做的,但它似乎没有工作。我正在尝试选择发生在01/01/2019 01:00和01/01/2021 01:00之间的行子集。
非常感谢。
df.loc[(df['TIMESTAMP'] == "01/01/2019 01:00"): (df['TIMESTAMP'] == "01/01/2021 01:00")]
我创建了一个测试数据帧,如下所示:
TIMESTAMP Amount
0 01/01/2019 00:00 101.0
1 01/01/2019 01:00 102.0
2 01/01/2019 02:00 103.0
3 01/05/2019 01:00 104.0
4 02/02/2020 00:00 105.0
5 01/01/2021 00:00 106.0
6 01/01/2021 01:00 107.0
7 01/01/2021 02:00 108.0
8 01/02/2021 01:00 109.0
请注意,TIMESTAMP 列是对象类型(实际上它包含字符串)。当您使用“/”作为分隔符时,我假设美国日期格式,即 mm/dd/yyyy。
第一步是将时间戳列转换为日期时间类型:
df.TIMESTAMP = pd.to_datetime(df.TIMESTAMP)
如果您现在打印df,它将包含:
TIMESTAMP Amount
0 2019-01-01 00:00:00 101.0
1 2019-01-01 01:00:00 102.0
2 2019-01-01 02:00:00 103.0
3 2019-01-05 01:00:00 104.0
4 2020-02-02 00:00:00 105.0
5 2021-01-01 00:00:00 106.0
6 2021-01-01 01:00:00 107.0
7 2021-01-01 02:00:00 108.0
8 2021-01-02 01:00:00 109.0
(这是熊猫格式化时间戳的方式)。
现在,要获取预期日期时间范围内的行,请运行:
result = df.query('TIMESTAMP.between("2019-01-01 01:00", "2021-01-01 01:00")')
注意,虽然TIMESTAMP列现在是datetime类型,但您可以将datetime指定为字符串。
结果是:
TIMESTAMP Amount
1 2019-01-01 01:00:00 102.0
2 2019-01-01 02:00:00 103.0
3 2019-01-05 01:00:00 104.0
4 2020-02-02 00:00:00 105.0
5 2021-01-01 00:00:00 106.0
6 2021-01-01 01:00:00 107.0
在Pandas的数据框中,一些列是数字的,像浮动;一些是非数字的,像对象。我们希望删除那些数值列为NaN的行,但不删除那些非数值列为NaN的行。 例如,对于具有四列的df:a、B、C和D。a和C的数据类型为Object,B和D的数据类型为Float。 我们将只删除其中一些数字列(浮点数)为NaN的行,而不应该删除其中一些非数字列(对象)为NaN的行。 最终结果如下: 我的步骤是: 检查哪些列的数据
假设我创建了一个熊猫数据帧 现在我正在运行一个像这样的选择 问题是:我如何将这个结果导出/保存到一个CSV文件? 预先默许 a
这不是一个重复的问题,但类似于 根据pandas中列中的值从数据帧中选择行
说明 pika新版binlog有时间戳,开发binlog_sender工具,根据输入的时间段回放对应数据到某个pika实例 工具目录: pika/tools/binlog_tools/binlog_sender 使用参数: -h -- 显示帮助 -t -- l 显示日志类型,old 或new -i -- pika实例的ip -p -- pika实例的port -n -- 输入的binlog的路径
在编程方面,我是一个新手,特别是熊猫。我也很抱歉,我问了一个已经在SF上提到的问题:我并不真正理解这个问题的现有答案。可能重复,但这个答案对新手来说很容易理解,如果不太全面的话。