python - 如果某行的位数为13,如何除以该行的值?

标签 python pandas

我有一个包含 1 列作为时间戳的数据框

UNIX Timestamp
1546357505
1546357518
1546357609412
1546357612
1546357761

我想将所有值设置为 10 位数字。所以这里只需要将值“1546357609412”除以1000。最终的输出应该是

UNIX Timestamp
1546357505
1546357518
1546357609
1546357612
1546357761

我尝试使用 div 函数,但随后我不确定如何检查该值是否为 13 位数字。此外,此列有 500 万个值,因此我需要一种有效的方法来进行更改。

最佳答案

您可以将其转换为 str 类型并仅对前 10 位数字进行切片,然后将其转换回 int:

df['Timestamp'] = df['Timestamp'].astype(str).str[:10].astype(int)

0    1546357505
1    1546357518
2    1546357609
3    1546357612
4    1546357761

关于python - 如果某行的位数为13,如何除以该行的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54949055/

相关文章:

python - Flask 中的动态导航

python - 大小为 (100, 1) 和 (100,) 的 numpy 数组有什么区别?

python - Pandas groupby mean - 进入数据框?

python - 如何减去与Python中不同时间间隔相对应的pandas列?

python - 如何选择只有正值的列?

python - 检查两个条件是否为真最快的方法是什么?

python - 使用 CSV 中的字段会导致我之前工作的代码出错

python - 使用 MySQLdb 执行 INSERT 查询但表为空

python - 如何通过对列进行分区来高效地生成这个字典?

python - 在一张图表中绘制多个不同长度的 Pandas 系列