Xmgrace通过批处理删除数据集指定行的实现方法问询
Xmgrace批处理删除数据集指定行解决方案
你之前输入的命令触发语法错误,是因为Xmgrace内置命令不支持S0[a][b]这类二维数组切片语法,删除数据集指定行需使用其官方提供的kill命令配合行索引规则操作,可行方案如下:
交互模式操作(Window>Commands打开的命令窗口适用)
- 单条指定行删除:以删除第一个加载的数据集S0的首行(第一行)为例,执行命令:
kill S0[0]
注:Xmgrace数据集的行下标从0开始计数,要删除第N行就对应填写下标N-1 - 连续范围行删除:以删除S0的第1~3行(下标0到2)为例,执行命令:
kill S0[0:2] - 非连续多行删除:逐行执行
kill命令即可,例如删除S0第1行和第4行:kill S0[0] kill S0[3]
批处理模式操作(无GUI批量处理多个文件适用)
使用Xmgrace自带的gracebat批处理工具即可实现无界面批量操作:
- 新建纯文本批处理脚本,示例内容如下:
# 加载原始数据文件,可重复写多条READ命令加载多个文件 READ "你的原始数据文件路径.dat" # 删除S0首行,多个数据集就对应写多条kill命令 kill S0[0] # 保存处理后的数据,也可写WRITEXYZ保存多列数据、SAVE保存agr工程文件 WRITE "处理后的数据保存路径.dat" EXIT
- 终端执行命令运行脚本即可完成批量处理:
gracebat -batch 你的脚本文件名
内容的提问来源于stack exchange,提问作者mspilsbury
相关产品推荐
相关产品推荐

