簡體   English   中英

Python-比較兩個CSV文件中的一列日期並保持相同

[英]Python - Compare a column of dates in two CSV files and keep those in common

我有兩個長度不等的CSV文件,它們的列看起來像這樣:

CSV 1

EntryDate
9/3/10
9/27/10
10/5/10
10/11/10
10/20/10
10/25/10

CSV 2

EntryDate
9/7/10
9/27/10
10/11/10
11/3/10

我想比較兩個文件並返回它們的共同日期。 我從Python 3開始,在熊貓中創建列的兩個數據框。

import pandas as pd

fields = ["StartDate"]
f1= "f1.csv"
df1 = pd.read_csv(f1, skipinitialspace=True, usecols=fields)

f2 = "f2.csv"
df2 = pd.read_csv(f2, skipinitialspace=True, usecols=fields)

我嘗試了pd.merge和difflib,但是沒有用。 我也嘗試過其他沒有運氣的人。 幫助或指示贊賞。

假設兩個文件都已排序。

准備:

  • 打開每個文件file1file2
  • 在文件上調用next跳過標題
  • 在文件上調用next以從每個文件獲取第一行

其余的部分:

  • 將每個文件中的行轉換為datetime對象,以便可以對其進行比較
  • 如果日期相等,
    • 將一個保存在一個容器中,也許是一個列表
    • 在每個文件上調用next以獲取每個文件的下一行
  • 如果file1行大於file2行,
    • file2上調用next並獲取其下一行
  • 如果file1行小於file2行,
    • file1上調用next並獲取其下一行
  • 重復執行直到其中一個文件引發StopIteration為止

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM