yahboom@Transbot:~$ rostopic list /rosout /rosout_agg
时间: 2023-12-24 19:02:24 浏览: 120
这个命令输出了 `/rosout` 和 `/rosout_agg` 两个 Topic,说明 ROS 正确运行,并且已经有一些节点在发布 ROS 日志信息。如果你想查看更多的 Topic,可以尝试在命令后面加上通配符 `*`,例如 `rostopic list *`。这样可以列出系统中的所有 Topic。
相关问题
rostopic echo /rosout
运行 `rostopic echo /rosout` 可以实时查看 ROS 系统中的日志信息。该命令会输出 `/rosout` topic 上发布的消息,包括消息的时间戳、日志等级、文件名和行数、节点名称、消息内容等。例如:
```
header:
seq: 101
stamp:
secs: 1632106807
nsecs: 578173732
frame_id: ''
level: 2
name: /rosout
msg: '[INFO][robot_state_publisher.cpp-431][1632106807.578162200]: Publishing robot state'
file: /opt/ros/melodic/share/robot_state_publisher/src/robot_state_publisher.cpp
function: publishTransforms
line: 431
topics: [TopicInfo: /tf_static, TopicInfo: /joint_states, TopicInfo: /rosout_agg, TopicInfo: /tf]
```
其中,`level` 表示日志等级,值为 1 ~ 5,分别对应 DEBUG、INFO、WARN、ERROR 和 FATAL 等级;`name` 表示发布该消息的节点名称;`msg` 表示消息内容;`file`、`function` 和 `line` 表示日志所在的文件名、函数名和行数。
import pandas as pd df=pd.read_csv('H:/analysis_results/root_global_results_HN.csv') group_data=df.groupby(df['folder'].str[:-2]) #计算品种的平均值和标准差 #folder=df['folder'].str.split('_').str[0] #mean=group_data.mean() #std=group_data.std() #print('mean:',round(mean,3)) #print('std:',round(std,3)) result=group_data.agg({'volume':['mean','std'], 'convex_volume':['mean','std'], 'surface_area':['mean','std'], 'length':['mean','std'], 'max_width':['mean','std'], 'max_depth':['mean','std']} ) result.columns = ['_'.join(col).strip() for col in result.columns.values] #result = result.sort_index() result_path='H:/analysis_results/mean_std_HN.csv' result.to_csv(result_path,index=False)得出的结果,第一列没有品种号,如何解决
可以将groupby的列和结果列合并,即将df['folder']列和result合并,然后再将合并后的结果按照品种号排序。代码如下:
```
import pandas as pd
df=pd.read_csv('H:/analysis_results/root_global_results_HN.csv')
group_data=df.groupby(df['folder'].str[:-2])
result=group_data.agg({'volume':['mean','std'],
'convex_volume':['mean','std'],
'surface_area':['mean','std'],
'length':['mean','std'],
'max_width':['mean','std'],
'max_depth':['mean','std']} )
result.columns = ['_'.join(col).strip() for col in result.columns.values]
result['folder'] = result.index
result = result[['folder', 'volume_mean', 'volume_std', 'convex_volume_mean', 'convex_volume_std',
'surface_area_mean', 'surface_area_std', 'length_mean', 'length_std', 'max_width_mean',
'max_width_std', 'max_depth_mean', 'max_depth_std']]
result = result.sort_values(by='folder')
result_path='H:/analysis_results/mean_std_HN.csv'
result.to_csv(result_path,index=False)
```
这样得出的结果就会包含品种号了。
阅读全文