Convert Text File to CSV using Python Pandas
Last Updated :
02 Sep, 2020
Let’s see how to Convert Text File to CSV using Python Pandas. Python will read data from a text file and will create a dataframe with rows equal to number of lines present in the text file and columns equal to the number of fields present in a single line. See below example for better understanding.
Original Text File
Dataframe created from upper text file will look as follows:
CSV File formed from given text file
Note: The first column in dataframe is indexing which is by default when a text file is read.
Once the dataframe is created, we will store this dataframe into a CSV file format using Dataframe.to_csv() Method.
Syntax: Dataframe.to_csv(parameters)
Return: None
Let’s see examples:
Example 1:
Python3
import pandas as pd
dataframe1 = pd.read_csv( "GeeksforGeeks.txt" )
dataframe1.to_csv( 'GeeksforGeeks.csv' ,
index = None )
|
Output:
CSV File formed from given text file
The text file read is same as above. After successful run of above code, a file named “GeeksforGeeks.csv” will be created in the same directory.
Example 2: Suppose the column heading are not given and the text file looks like:
Text File without headers
Then while writing the code you can specify headers.
Python3
import pandas as pd
websites = pd.read_csv( "GeeksforGeeks.txt"
,header = None )
websites.columns = [ 'Name' , 'Type' , 'Website' ]
websites.to_csv( 'GeeksforGeeks.csv' ,
index = None )
|
Output:
CSV file with headers
We see that headers have been added successfully and file has been converted from ‘.txt’ format to ‘.csv’ format.
Example 3: In this example, the fields in the text file are separated by user defined delimiter “/”.
‘/’ Delimited Text File
Python3
import pandas as pd
account = pd.read_csv( "GeeksforGeeks.txt" ,
delimiter = '/' )
account.to_csv( 'GeeksforGeeks.csv' ,
index = None )
|
Output:
CSV File
While reading data we specify that data should be tokenized using specified delimiter. In this case ‘/’.
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...