Python 数据帧中的时间戳

Python 数据帧中的时间戳,python,pandas,dataframe,Python,Pandas,Dataframe,我有这样一个数据帧: +---+---+----+ | ts| p1| p2 | +---+---+------ |200|[1]| null| |220|[2]| [2] | |240|[3]| [4] | |250|[3]| [4] | +---+---+-----+ +---+---+----+ | ts_new| p1| p2 | +---+---+------ |200|[1]| null| |200|[2]| [2] | |230|[3]| [4] | |230|[3]| [4]

我有这样一个数据帧:

+---+---+----+
| ts| p1| p2 |
+---+---+------
|200|[1]| null|
|220|[2]| [2] |
|240|[3]| [4] |
|250|[3]| [4] |
+---+---+-----+
+---+---+----+
| ts_new| p1| p2 |
+---+---+------
|200|[1]| null|
|200|[2]| [2] |
|230|[3]| [4] |
|230|[3]| [4] |
+---+---+-----+

我需要这样的输出:

+---+---+----+
| ts| p1| p2 |
+---+---+------
|200|[1]| null|
|220|[2]| [2] |
|240|[3]| [4] |
|250|[3]| [4] |
+---+---+-----+
+---+---+----+
| ts_new| p1| p2 |
+---+---+------
|200|[1]| null|
|200|[2]| [2] |
|230|[3]| [4] |
|230|[3]| [4] |
+---+---+-----+

基本上我需要一个函数,它接受ts的输入,比如说200,然后在每30个单位的间隔内,替换ts的值,如果它在30个单位的间隔内


非常感谢您的帮助。

我想您需要的是这样的帮助:

+---+---+----+
| ts| p1| p2 |
+---+---+------
|200|[1]| null|
|220|[2]| [2] |
|240|[3]| [4] |
|250|[3]| [4] |
+---+---+-----+
+---+---+----+
| ts_new| p1| p2 |
+---+---+------
|200|[1]| null|
|200|[2]| [2] |
|230|[3]| [4] |
|230|[3]| [4] |
+---+---+-----+

binsize=30
偏移量=200
df[“ts”]=((df[“ts”]-偏移量)//bin大小)*bin大小+偏移量

谢谢Alex,这很有效,我采用了一种迭代方法,耗时更长,您的解决方案更好。谢谢你的帮助