df = df.rename(columns = {'myvar':'myvar_new'})
#df.rename() will only return a new df with the new headers
#df = df.rename() will change the heders of the current dataframe
df = df.rename(columns={"old_col1": "new_col1", "old_col2": "new_col2"})
df.rename(columns={"A": "a", "B": "b", "C": "c"},
errors="raise", inplace=True)
df.rename({'current':'updated'},axis = 1, inplace = True)
print(df.rename(columns={'A': 'a', 'C': 'c'}))
# a B c
# ONE 11 12 13
# TWO 21 22 23
# THREE 31 32 33
df.columns = ['Bill', 'name', 'type']
df
df.columns = ['A','B']
import pandas as pd
# You don't need these two lines
# as you already have your DataFrame in memory
df = pd.read_csv("nor.txt", sep="|")
df.drop(df.columns[-1], axis=1)
# Get column names
cols = df.columns
# Create a new DataFrame with just the markdown
# strings
df2 = pd.DataFrame([['---',]*len(cols)], columns=cols)
#Create a new concatenated DataFrame
df3 = pd.concat([df2, df])
#Save as markdown
df3.to_csv("nor.md", sep="|", index=False)