title: Opening and Reading a csv file using read_csv from Tkinter GUI
body: <pre><code>from tkinter import filedialog, Label, Button, Entry, StringVar
  from tkinter.filedialog import askopenfile
  import pandas as pd
  
  root = tk.Tk()
  Label(root, text='File Path').grid(row=0, column=0)
  v = StringVar()
  entry = Entry(root, textvariable=v).grid(row=0, column=1)
  Button(root, text='Browse Data Set',command=lambda:   v.set(askopenfile())).grid(row=1, column=0)
  Button(root, text='Close',command=root.quit()).grid(row=1, column=1)
  root.file = v.get()
  df = pd.read_csv(root.file)
  root.mainloop()
  </code></pre>
  
  <p>I want to open a dataset (CSV file) on the click of a button and read it using  <code>pd.read_csv()</code> function  i am getting  some errors</p>
  
  <pre><code>Traceback (most recent call last):
    File "/home/abishek/PycharmProjects/untitled1/temp.py", line 21, in &lt;module&gt;
      df = pd.read_csv(root.file)
    File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 498, in parser_f
      return _read(filepath_or_buffer, kwds)
    File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 275, in _read
      parser = TextFileReader(filepath_or_buffer, **kwds)
    File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 590, in __init__
      self._make_engine(self.engine)
    File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 731, in _make_engine
      self._engine = CParserWrapper(self.f, **self.options)
    File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 1103, in __init__
      self._reader = _parser.TextReader(src, **kwds)
    File "pandas/parser.pyx", line 353, in pandas.parser.TextReader.__cinit__ (pandas/parser.c:3246)
    File "pandas/parser.pyx", line 591, in pandas.parser.TextReader._setup_parser_source (pandas/parser.c:6111)
  OSError: File b'' does not exist
  
  Process finished with exit code 1
  </code></pre>
  
  <p>Please Help me with this one i am new to Tkinter</p>
  
  <p>I Have done the first part now i have an other problem </p>
  
  <p>1.I browsed a file 
  2.I will get the columns of the data Frame using <code>list(df)</code> and i wanted it to displayed it in an option menu  i am doing it with the following code </p>
  
  <pre><code>import tkinter as tk
  from tkinter.filedialog import askopenfilename
  import pandas as pd
  
  root = tk.Tk()
  v = tk.StringVar(root)
  v1 = tk.StringVar(root)
  v2 = tk.StringVar(root)
  v3 = tk.StringVar(root)
  df = pd.DataFrame()
  col = []
  ss = ['a','b','c','d','e']
  
  
  def get_data_frame():
      global v
      global df
      global col
      file_name = askopenfilename()
      v.set(file_name)
      df = pd.read_csv(file_name)
      col = list(df)
      print(col)
  
  
  def fill():
      return list(df)
  
  
  tk.Label(root, text='File Path').grid(row=0, column=0)
  entry = tk.Entry(root, textvariable=v).grid(row=0, column=1)
  tk.Button(root, text='Browse Data Set', command=get_data_frame).grid(row=0, column=3)
  tk.Label(root, text='Class LabelAttribute').grid(row=1, column=0)
  tk.OptionMenu(root,v1,*col).grid(row=1, column=1)
  v1.set('Nil')
  tk.Label(root, text='Row Counter Attribute').grid(row=2, column=0)
  v2.set('Nil')
  tk.OptionMenu(root,v2,*col).grid(row=2, column=1)
  tk.Button(root, text='Close', command=root.destroy).grid(row=5, column=3)
  tk.Entry(root, textvariable=v3).grid(row=6, column=0)
  tk.Button(root, text='Setter', command=lambda: v3.set(type(col[0]))).grid(row=6, column=1)
  v3.set(col)
  root.mainloop()
  print(col)
  </code></pre>
  
  <p>but python is giving the following error</p>
  
  <pre><code>Traceback (most recent call last):
    File "/home/abishek/PycharmProjects/untitled1/GUI.py", line 34, in &lt;module&gt;
      tk.OptionMenu(root,v1,*col).grid(row=1, column=1)
  TypeError: __init__() missing 1 required positional argument: 'value'
  </code></pre>