使用代码从Excel的CSV文件中删除特定列并创建新CSV?

时间:2016-05-07 14:42:58

标签: excel csv

我有一个csv文件,想要一次删除多个列,并创建一个已删除列的已修改csv文件。任何人都可以帮助代码。任何减少我工作的代码。我有98列,想从中删除20个。

1 个答案:

答案 0 :(得分:0)

如果您正在处理带有.csv个文件的Mac或Unix版本,则可以使用cut:

说明

好的,首先我们为示例创建一些示例数据文件test_data.csv ...

NB。在任何人兴奋之前,使用在线网站mockaroo来自动生成数据......

> cat << EOM > ./test_data2.csv
> id,first_name,last_name,email,gender,ip_address,credit card,currency,card type,SSN,Job Title
> 1,Harry,Sims,hsims0@sciencedaily.com,Male,174.238.91.241,6.37E+15,USD,instapayment,957-13-2463,Account Coordinator
> 2,Roger,Diaz,rdiaz1@cdc.gov,Male,54.3.87.18,5.60E+15,JPY,china-unionpay,443-48-9271,Chief Design Engineer
> 3,Judith,Rodriguez,jrodriguez2@phpbb.com,Female,144.202.176.34,3.66E+13,CNY,diners-club-international,143-09-9592,Software Engineer II
> 4,Janet,Freeman,jfreeman3@gmpg.org,Female,75.90.62.44,4.04E+12,XAF,visa,990-06-7350,Chief Design Engineer
> 5,Brenda,Wagner,bwagner4@shop-pro.jp,Female,142.54.140.226,6.76E+18,ALL,maestro,388-40-2924,Community Outreach Specialist
> 6,Debra,Hudson,dhudson5@cnbc.com,Female,7.112.96.15,4.51E+15,PAB,visa-electron,834-13-2887,Staff Accountant III
> 7,Louise,Bryant,lbryant6@state.gov,Female,209.149.145.167,6.33E+18,UAH,switch,629-91-3329,Help Desk Technician
> 8,Barbara,Hamilton,bhamilton7@mapy.cz,Female,157.47.214.77,3.62E+13,IDR,diners-club-international,704-16-4814,Statistician I
> 9,Thomas,Hunt,thunt8@walmart.com,Male,85.15.214.211,4.41E+15,BRL,visa-electron,493-19-3197,Desktop Support Technician
> EOM

现在让我们提取我们想要的列...例如2,3,4,5和8.我们使用cut来执行此操作,我们告诉cut文件使用,作为列分隔符( -d ,)我们要提取第2列到第5列和第8列(-f 2-5,8

> cat test_data.csv | cut -d , -f 2-5,8
first_name,last_name,email,gender,currency
Harry,Sims,hsims0@sciencedaily.com,Male,USD
Roger,Diaz,rdiaz1@cdc.gov,Male,JPY
Judith,Rodriguez,jrodriguez2@phpbb.com,Female,CNY
Janet,Freeman,jfreeman3@gmpg.org,Female,XAF
Brenda,Wagner,bwagner4@shop-pro.jp,Female,ALL
Debra,Hudson,dhudson5@cnbc.com,Female,PAB
Louise,Bryant,lbryant6@state.gov,Female,UAH
Barbara,Hamilton,bhamilton7@mapy.cz,Female,IDR
Thomas,Hunt,thunt8@walmart.com,Male,BRL

如果您使用的是Windows,则可以选择安装https://www.cygwin.com/,以便在Windows上访问Un * x的命令行工具。