csv - 根据另一个 csv 中的列信息从一个 csv 文件中提取行
问题描述
我有 2 个 csv 文件。我希望文件 1 的第 1 列的信息用于从另一个 csv 文件中提取行。我的 file1.csv 的名称按列排列:
ENSG00000102977
ENSG00000100823
ENSG00000149311
ENSG00000175054
ENSG00000085224
ENSG00000178999
ENSG00000197299
ENSG00000139618
ENSG00000105173
ENSG00000175305
ENSG00000166226
ENSG00000163468
ENSG00000115484
ENSG00000150753
ENSG00000146731
第二个 csv 文件的名称以及相应的值按行排列。
ENSG00000102977 1083.82334384253 1824.50639384557 1962.86064714976 1367.60568624972
我写了一个awk脚本
`awk 'FNR == NR{f1[$1];next} $1 in f2 {print $1,$2,$3,$4,$5 $NF}' FS="," file1.csv FS="," file2.csv`
但它返回时没有任何输出或错误。请指导我哪里错了。它有点令人费解,因为没有错误。
解决方案
Trygrep
的选项 -f - 从文件中读取模式。
grep -f fileWithPatterns.csv fileToExtractFrom.csv
推荐阅读
- c++ - C++ 中 main() 的参数
- ios - 编程的 UISlider 值不变
- raspberry-pi3 - Python套接字服务器未在覆盆子中连接
- android - 如何阻止我的 Android 模拟器的分区大小在关闭时重置?
- android - Getting Authentication Failed When Adding New User to Firebase Authentication
- amazon-web-services - How to create subnets with even distribution of IP addresses?
- go - golang-grpc service - import types from another file
- node.js - Bot Framework Getting 502 Bad Gateway Errors in Production Environment after the Bot is not Requested for around 10 Minutes (Node.js)
- c++ - 在c ++中使用向量在数组的第一个索引处缺少第一个字母
- c++ - c++ operator overloading = not working well in visual studio yet works in eclipse CDT