How to load a tsv file into a Pandas DataFrame?

PythonPandasCsv

Python Problem Overview


I'm new to python and pandas. I'm trying to get a tsv file loaded into a pandas DataFrame.

This is what I'm trying and the error I'm getting:

>>> df1 = DataFrame(csv.reader(open('c:/~/trainSetRel3.txt'), delimiter='\t'))

Traceback (most recent call last):
  File "<pyshell#28>", line 1, in <module>
    df1 = DataFrame(csv.reader(open('c:/~/trainSetRel3.txt'), delimiter='\t'))
  File "C:\Python27\lib\site-packages\pandas\core\frame.py", line 318, in __init__
    raise PandasError('DataFrame constructor not properly called!')
PandasError: DataFrame constructor not properly called!

Python Solutions


Solution 1 - Python

The .read_csv function does what you want:

pd.read_csv('c:/~/trainSetRel3.txt', sep='\t')

If you have a header, you can pass header=0.

pd.read_csv('c:/~/trainSetRel3.txt', sep='\t', header=0)

Note: Prior 17.0, pd.DataFrame.from_csv was used (it is now deprecated and the .from_csv documentation link redirects to the page for pd.read_csv).

Solution 2 - Python

As of 17.0 from_csv is discouraged.

Use pd.read_csv(fpath, sep='\t') or pd.read_table(fpath).

Solution 3 - Python

Use pandas.read_table(filepath). The default separator is tab.

Solution 4 - Python

Try this

df = pd.read_csv("rating-data.tsv",sep='\t')
df.head()

enter image description here

You actually need to fix the sep parameter.

Solution 5 - Python

open file, save as .csv and then apply

df = pd.read_csv('apps.csv', sep='\t')

for any other format also, just change the sep tag

Solution 6 - Python

data = pd.read_csv('your_dataset.tsv', delimiter = '\t', quoting = 3)

You can use a delimiter to separate data, quoting = 3 helps to clear quotes in datasst

Solution 7 - Python

df = pd.read_csv('filename.csv', sep='\t', header=0)

You can load the tsv file directly into pandas data frame by specifying delimitor and header.

Solution 8 - Python

Try this:

import pandas as pd
DataFrame = pd.read_csv("dataset.tsv", sep="\t")

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionscreechOwlView Question on Stackoverflow
Solution 1 - PythonhuonView Answer on Stackoverflow
Solution 2 - PythonKamil SindiView Answer on Stackoverflow
Solution 3 - PythonWes McKinneyView Answer on Stackoverflow
Solution 4 - PythonMohsin AshrafView Answer on Stackoverflow
Solution 5 - Pythonankit srivastavaView Answer on Stackoverflow
Solution 6 - PythonĐ.J vickyView Answer on Stackoverflow
Solution 7 - PythonKofiView Answer on Stackoverflow
Solution 8 - PythonpeacelovingView Answer on Stackoverflow