Reputation: 171
I created a csv file from a pandas dataframe. I want to retain the Unnamed: 0
column in the csv file but rename it as class
.
import re
import csv
# Read the channelNames.txt file line-by-line to find the class names
channel_file = "../input_data/images/channelNames.txt"
with open(channel_file, "r") as class_info:
lines = class_info.readlines()
cls_names = []
# Remove lines with "Blank"
for l in lines:
if re.findall(r"Blank", l):
pass
else:
cls_names.append(l)
# Create classes.csv
cls_df = pd.DataFrame(cls_names, columns=["class_name"])
cls_df.to_csv('classes.csv', index=True)
cls_read = pd.read_csv("classes.csv")
cls_read.head()
Unnamed: 0 | class_name |
---|---|
0 | A |
1 | B |
2 | C |
3 | D |
Desired output
class | class_name |
---|---|
0 | A |
1 | B |
2 | C |
3 | D |
Upvotes: 0
Views: 587
Reputation: 1765
cls_df.to_csv('classes.csv', index=True, index_label='class')
If you don't have to save it with "Unnamed: 0", with this way you can save it named as "class".
P.S. columns named as "class" are a little bit dangerous; you won't be able to use df.class
.
Edit E.g.
df = pd.DataFrame({'foo': [1, 2, 3]})
df.to_csv('foo.csv', index=True, index_label='class')
pd.read_csv('foo.csv') # outputs a column named class
Upvotes: 1