I have two files in csv format and wants to compare the columns.i want the list to be present in other csv file
import tkinter as tk
import pandas as pd
from tkinter.filedialog import askopenfilename
def latlong_func(filename):
data = pd.read_csv(filename)
data["latlong"] = 'FALSE'
data.loc[(data["FAC_TYPE"] ==9500)|
(data["FAC_TYPE"] ==9501)|
(data["FAC_TYPE"] ==9502)|
(data["FAC_TYPE"] ==9503)|
(data["FAC_TYPE"] ==9504)|
(data["FAC_TYPE"] ==9506)|
(data["FAC_TYPE"] ==9507)|
(data["FAC_TYPE"] ==9508)|
(data["FAC_TYPE"] ==9509)|
(data["FAC_TYPE"] ==9510)|
(data["FAC_TYPE"] ==9511)|
(data["FAC_TYPE"] ==9514)|
(data["FAC_TYPE"] ==9515)|
(data["FAC_TYPE"] ==9516)|
(data["FAC_TYPE"] ==9517)|
(data["FAC_TYPE"] ==9520)|
(data["FAC_TYPE"] ==9521)|
(data["FAC_TYPE"] ==9522)|
(data["FAC_TYPE"] ==9527)|
(data["FAC_TYPE"] ==9529)|
(data["FAC_TYPE"] ==9529)|
(data["FAC_TYPE"] ==9531)|
(data["FAC_TYPE"] ==9536)|
(data["FAC_TYPE"] ==9529)|
(data["FAC_TYPE"] ==9529)|
(data["FAC_TYPE"] ==9529)|
(data["FAC_TYPE"] ==9540)|
(data["FAC_TYPE"] ==9542)|
(data["FAC_TYPE"] ==9544)|
(data["FAC_TYPE"] ==9545)|
(data["FAC_TYPE"] ==9546)|
(data["FAC_TYPE"] ==9547)|
(data["FAC_TYPE"] ==9548)|
(data["FAC_TYPE"] ==9549)|
(data["FAC_TYPE"] ==9550)|
(data["FAC_TYPE"] ==9551)|
(data["FAC_TYPE"] ==9552)|
(data["FAC_TYPE"] ==9553)|
(data["FAC_TYPE"] ==9554)|
(data["FAC_TYPE"] ==9555)|
(data["FAC_TYPE"] ==9556)|
(data["FAC_TYPE"] ==9557)|
(data["FAC_TYPE"] ==9558)|
(data["FAC_TYPE"] ==9559)|
(data["FAC_TYPE"]==9561)|
(data["FAC_TYPE"]==9562)|
(data["FAC_TYPE"] ==9563)|
(data["FAC_TYPE"] ==9564)|
(data["FAC_TYPE"] ==9566)|
(data["FAC_TYPE"] ==9513)|
(data["FAC_TYPE"] ==9569)|
(data["FAC_TYPE"] ==9572)|
(data["FAC_TYPE"] ==9574)|
(data["FAC_TYPE"] ==9575)|
(data["FAC_TYPE"] ==9576)|
(data["FAC_TYPE"] ==9577)|
(data["FAC_TYPE"] ==9578)|
(data["FAC_TYPE"] ==9580)|
(data["FAC_TYPE"] ==9581)|
(data["FAC_TYPE"] ==9584)|
(data["FAC_TYPE"] ==9585)|
(data["FAC_TYPE"] ==9586)|
(data["FAC_TYPE"] ==9990)|
(data["FAC_TYPE"] ==9589), ["latlong"]] ='TRUE'
data.to_csv("C:/Users/patesari/Desktop/python
work/practice1.csv")
writer = data[data["latlong"]=='TRUE']
writer.to_csv('C:/Users/patesari/Desktop/python
work/newfile1.csv', index=False)
writer.to_csv('C:/Users/patesari/Desktop/python
work/outputfiles/latlong1.csv', index=False)
def get_filename():
filename0 = askopenfilename(filetypes =[('Python Files', '*.csv')])
filename1 = askopenfilename(filetypes =[('Python Files', '*.csv')])
if filename:
lbl['text'] = filename
latlong_func(filename)
else:
lbl['text'] = 'not selected'
root = tk.Tk()
root.geometry('200x100')
lbl = tk.Label(root, text='Select filename')
lbl.pack(side='top', pady=10)
btn = tk.Button(root, text='Open', command=get_filename)
btn.pack(side='top', pady=10)
root.mainloop()
In above i take file dynamically but I have hard coded the "or" ones.I want to compare it with 2nd csv file where the list is present.not the hard coded one. how can we store the list in csv in particular path and then compare that file
I don't know what you try to do with data so I keep empty
work_with_data(data1, data2)
but this code shows how to get two filenames, useread_csv()
two times and finally run functionwork_with_data(data1, data2)
It also use two
Labels
to display two filenames.EDIT: I changed little code so you can use
pandas
orcsv.reader
inwork_with_data