bash - 在 Bash 中拆分 csv 文件中的列
问题描述
我想从 csv 文件的第二列中提取值,并将提取的值存储在新列中。
我的数据集样本:
page_name post_id page_id
A 86680728811_272953252761568 86680728811
A 86680728811_273859942672742 86680728811
B 86680728033_281125741936891 86680728033
B 86680728033_10150500662053812 86680728033
我想提取下划线后面的数字并将它们存储在新列中。样本输出:
page_name post_id page_id
A 272953252761568 86680728811
A 273859942672742 86680728811
B 281125741936891 86680728033
B 10150500662053812 86680728033
我尝试使用此代码:
cat FB_Dataset.csv | sed -Ee 's/(.*)post_id/\1post_id/' -e 's/,[_ ]/,/' -e 's/_/,/'
但我没有得到想要的输出。
任何帮助表示赞赏。谢谢你。
解决方案
sed 's/[0-9][0-9]*_//' < a.csv
其中 a.csv 是
编辑原始数据以添加 [0-9]的文件
推荐阅读
- python - Colab 中的 /root/.keras/datasets/ 在哪里
- html - 这是一个杀了我的href
- python - 如何获取 tf.data.Dataset 的特征和张量字典?
- c - 尝试使用 strcpy 时出现核心转储错误
- c - 为什么这个很小的 C 程序会占用这么多内存?
- postgresql - spring data jpa update of multiple rows doesn't work
- javascript - 在对象中存储数组
- flutter - 避免 StreamBuilder 在 Flutter 中刷新运行 SetState
- c# - .Net Core ControllerBase 动作方法 JSON 序列化设置
- javascript - 表单提交必填空白字段显示消息“请填写此字段。”