We Are Going To Discuss About Python, Pandas : write content of DataFrame into text File. So lets Start this Python Article.
Python, Pandas : write content of DataFrame into text File
You can just use np.savetxt
and access the np attribute .values
:np.savetxt(r'c:\data\np.txt', df.values, fmt='%d')
yields:18 55 1 70 18 55 2 67 18 57 2 75 18 58 1 35 19 54 2 70
or to_csv
:df.to_csv(r'c:\data\pandas.txt', header=None, index=None, sep=' ', mode='a')
Note for np.savetxt
you’d have to pass a filehandle that has been created with append mode.
You can just use np.savetxt
and access the np attribute .values
:np.savetxt(r'c:\data\np.txt', df.values, fmt='%d')
yields:18 55 1 70 18 55 2 67 18 57 2 75 18 58 1 35 19 54 2 70
or to_csv
:df.to_csv(r'c:\data\pandas.txt', header=None, index=None, sep=' ', mode='a')
Note for np.savetxt
you’d have to pass a filehandle that has been created with append mode.
Solution 1
You can just use np.savetxt
and access the np attribute .values
:
np.savetxt(r'c:\data\np.txt', df.values, fmt='%d')
yields:
18 55 1 70
18 55 2 67
18 57 2 75
18 58 1 35
19 54 2 70
or to_csv
:
df.to_csv(r'c:\data\pandas.txt', header=None, index=None, sep=' ', mode='a')
Note for np.savetxt
you’d have to pass a filehandle that has been created with append mode.
Original Author EdChum Of This Content
Solution 2
The native way to do this is to use df.to_string()
:
with open(writePath, 'a') as f:
dfAsString = df.to_string(header=False, index=False)
f.write(dfAsString)
Will output the following
18 55 1 70
18 55 2 67
18 57 2 75
18 58 1 35
19 54 2 70
This method also lets you easily choose which columns to print with the columns
attribute, lets you keep the column, index labels if you wish, and has other attributes for spacing ect.
Original Author johnDanger Of This Content
Solution 3
You can use pandas.DataFrame.to_csv(), and setting both index
and header
to False
:
In [97]: print df.to_csv(sep=' ', index=False, header=False)
18 55 1 70
18 55 2 67
18 57 2 75
18 58 1 35
19 54 2 70
pandas.DataFrame.to_csv
can write to a file directly, for more info you can refer to the docs linked above.
Original Author Anzel Of This Content
Solution 4
Late to the party: Try this>
base_filename = 'Values.txt'
with open(os.path.join(WorkingFolder, base_filename),'w') as outfile:
df.to_string(outfile)
#Neatly allocate all columns and rows to a .txt file
Original Author Rene Duchamp Of This Content
Conclusion
So This is all About This Tutorial. Hope This Tutorial Helped You. Thank You.