Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in Machine Learning by (19k points)

I have a dataframe in pandas which I would like to write to a CSV file. I am doing this using:

df.to_csv('out.csv')

And getting the error:

UnicodeEncodeError: 'ASCII' codec can't encode character u'\u03b1' in position 20: ordinal not in range(128)

Is there any way to get around this easily (i.e. I have Unicode characters in my data frame)? And is there a way to write to a tab-delimited file instead of a CSV using e.g. a 'to-tab' method (that I don't think exists)?

1 Answer

0 votes
by (33.1k points)

In pandas, we can easily convert dataframe into CSV file. It helps to share our dataframe with someone else.

To delimit by a tab you can use the sep argument of to_csv:

df.to_csv(file_name, sep='\t')

To use a specific encoding (e.g. 'utf-8') use the encoding argument:

df.to_csv(file_name, sep='\t', encoding='utf-8')

Browse Categories

...