python - 使用 pandas 数据框计算行数

标签 python pandas dataframe timestamp

我有一个带有时间戳数据的 pandas 数据框。 我想计算每分钟有多少行,例如,给定此表:

00:00:01 数据1

00:00:21 数据2

00:02:02 数据3

00:02:10 数据4

00:02:31 数据5

结果应该是[2,0,3]。 我该怎么做?

最佳答案

您可以首先将第一列转换为 pd.Timedelta dtype,然后将其设置到索引中并使用带有计数的重新采样:

from io import StringIO
txt = StringIO("""00:00:01 data1

00:00:21 data2

00:02:02 data3

00:02:10 data4

00:02:31 data5""")

df = pd.read_csv(txt, names=['Time','Value'], sep='\s+')


df['Time'] = pd.to_timedelta(df['Time'])

df = df.set_index('Time')

df_out = df.resample('T').count()

df_out 

输出:

          Value
Time           
00:00:01      2
00:01:01      0
00:02:01      3

列表:

df_out['Value'].tolist()

输出:

[2, 0, 3]

关于python - 使用 pandas 数据框计算行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50031872/

相关文章:

python - 如何区分本地文件系统路径和SSH文件系统路径?

python - Python Pandas DataFrame 上的指数衰减

python - Pandas 数据帧 : How to perform operation on 2 columns from different direction

python - Python 和 Pandas 的问题 : Adding calculated column to dataframe that includes data from a function provides error

python - 如何在 Python 数据框中为 boolean 函数添加下标?

python - 二次方程的错误答案

python - 如何用 pandas 截断日期时间列?

python - 如何理解 Django View 函数的配置文件输出

python - Pandas 数据框捕获具有填充常量的多列的行

用于创建和合并数据库数据透视表的 Python Pandas For 循环