python - Python pandas 存储数据集的最佳方式
问题描述
我有一个包含数千个条目的数据集,如下所示: Dataset Img
row
1 timestamp type side strength amor health
2 23958722 robot_1 left 100 20 100
3 right 200 25 100
4 robot_2 left 100 25 90
5 right 80 10 19
6 robot_3 right 40 20 200
7 robot_4 left 100 100 20
8 1424121 robot_1 left 90 19 100
9 robot_2 left 90 25 10
我的问题:
- 是否可以将这些数据传输到 pandas DataFrame 中?
- 我是否还必须为第 3 行到第 7 行存储时间戳 23958722(第 2 行)?
- 我是否必须在时间戳 1424121 中为机器人_1 和机器人_2 提供右侧?
- 是否可以避免在第 3 行再次提供 robots_1(第 2 行)?
我也有点不知道如何在这里设置索引。例如,一个查询可以是:获取右侧所有 robot_1 的健康值。应该只返回第 3 行。
非常感谢任何帮助!
解决方案
1- 使用 DataFrame.shift() 方法移动索引
import pandas as pd
df = pd.DataFrame(data={'t': [0, 1, 2, 3], 'Mid Elec': [0., 43102.5, 41692.0, 40592.8], 'South Elec': [0., 43102.5, 41692.0, 40592.8], 'North Elec': [0., 43102.5, 41692.0, 40592.8]})
df.set_index('t', inplace=True)
df = df.shift(-1)
推荐阅读
- c# - 如何正确使用 InsertMany Mongodb C#
- apache-kafka - Spring Kafka - 如何使用具有不同配置的多个侦听器配置单个 ListenerContainerFactory
- python - 自定义类中的信号和插槽,包括 PyQt QWidget 不起作用
- python - 等待在 Python 中使用 asyncio 下载
- html - 是否可以像行内文本一样使行内块元素换行?
- qt - 我尝试通过从源代码构建在 CentOS8 上安装 Qt4.8.1,但出现以下错误:
- c# - 关于unity c#脚本更新功能的问题
- ios - 如何水平对齐两个 UILabel(具有固定和可变宽度)
- html - HTML to Jinja2 如何根据以前的样式为类赋予属性以形成变量
- python-3.x - 如何从 npy 文件中绘制 3D 点云?