【问题标题】:Bash - Date manipulation and joinBash - 日期操作和加入
【发布时间】:2016-02-02 21:06:39
【问题描述】:

我有两个 CSV 文件,我想使用 DATE (CSV 1) 和 pickup_datetime (CSV 2) 进行合并。

CSV 1:Weather.csv(45KB ~ 365 行)

head -3 Weather.csv 
STATION,STATION_NAME,ELEVATION,LATITUDE,LONGITUDE,DATE,PRCP,SNWD,SNOW,TMAX,TMIN,AWND,WDF2,WSF2
GHCND:USW00094728,NEW YORK CENTRAL PARK OBS BELVEDERE TOWER NY US,39.6,40.77889,-73.96917,20130101,0,0,0,44,-33,31,310,67
GHCND:USW00094728,NEW YORK CENTRAL PARK OBS BELVEDERE TOWER NY US,39.6,40.77889,-73.96917,20130102,0,0,0,6,-56,26,310,67

CSV 2:Final_Data_1.csv(250MB ~ 150 万行)

head -3 final_data_1.csv 
medallion,hack_license,vendor_id_x,rate_code,store_and_fwd_flag,pickup_datetime,dropoff_datetime,passenger_count,trip_time_in_secs,trip_distance,pickup_longitude,pickup_latitude,dropoff_longitude,dropoff_latitude,vendor_id_y,payment_type,fare_amount,surcharge,mta_tax,tip_amount,tolls_amount,total_amount
DFD2202EE08F7A8DC9A57B02ACB81FE2,51EE87E3205C985EF8431D850C786310,CMT,1,N,2013-01-01 23:54:15,2013-01-01 23:58:20,2,244,0.7,-73.974602,40.759945,-73.984734,40.759388,CMT,CSH,5.0,0.5,0.5,0.0,0.0,6.0
237F49C3ECC11F5024B254268F054384,93C363DDF8ED9385D65FAD07CE3F5F07,CMT,1,N,2013-01-01 07:35:47,2013-01-01 07:46:00,1,612,2.3,-73.98850999999999,40.774307,-73.981094,40.755325,CMT,CSH,10.0,0.0,0.5,0.0,0.0,10.5

如何操作两个 CSV 文件中的日期列并将其合并以获得一个文件,其中 Final_Data_1.csv 列在 Weather.csv 之前?

【问题讨论】:

  • 你如何找出 FinalData 的哪一行要合并到 Weather 的哪一行?那么,将它们链接在一起的 id 是什么?
  • 既然你用的是Python标签,你试过Python csv模块吗? docs.python.org/3/library/csv.html
  • 嗯,2013-01-01 的 final_data 将有大约 50,000 行。所以需要将weather.csv中对应的值复制到final_data中。

标签: python bash csv join


【解决方案1】:

您肯定不想使用 Bash,Python 中的一个好方法是使用 pandas,如下所示:

import pandas as pd
df1 = pd.read_csv('weather.csv')
df2 = pd.read_csv('final.csv')
#format the date columns so they match up
df3 = pd.merge(df2,df1, on='date_formatted')

【讨论】:

    猜你喜欢
    • 2019-08-20
    • 2016-07-21
    • 1970-01-01
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    • 1970-01-01
    • 2021-12-18
    • 2017-08-17
    相关资源
    最近更新 更多