Python 如何添加额外的文本字符串以在dataframe的特定行上打印

Python 如何添加额外的文本字符串以在dataframe的特定行上打印,python,pandas,Python,Pandas,我有一个数据框,我想打印索引名,然后从打印中禁用索引号。然后我想将特定文本添加到特定列。我还想使最上面一行静音 Current code: d=((d*100).round(2)).astype(str) + '%' d='Prob animal=('+ d.reset_index() + ')' print(d) Current output: index black 0 animal 1 Prob animal=(bird) Pr

我有一个数据框,我想打印索引名,然后从打印中禁用索引号。然后我想将特定文本添加到特定列。我还想使最上面一行静音

Current code:
d=((d*100).round(2)).astype(str) + '%'
d='Prob animal=('+ d.reset_index() + ')'
print(d)

Current output:

  index    black 
0 animal                    
1 Prob animal=(bird)    Prob animal=(33.33%) 
2 Prob animal=(cat)     Prob animal=(50.00%) 
3 Prob animal=(dog)     Prob animal=(0.00%)  

Expected output:

Prob animal=(bird)    =33.33%  
Prob animal=(cat)     =50.00%  
Prob animal=(dog)     =0.00%

您可以将
header=False
传递给
DataFrame.to_string()
DataFrame.to_csv()
方法

import pandas as pd

data = [
    ['bird', 0.33333333],
    ['cat',  0.50000000],
    ['dog',  0.00000000],
]
columns = ['animal', 'black']
df = pd.DataFrame(data=data, columns=columns)
df.set_index('animal', inplace=True)
df.index = map(lambda x: 'Prob animal=({})'.format(x), df.index)
df['black'] = df['black'].apply(lambda x: '={:0>5.2f}%'.format(100 * x))

print(df.to_string(header=False))
df.to_csv('output.csv', header=False)

您可以将
header=False
传递给
DataFrame.to_string()
DataFrame.to_csv()
方法

import pandas as pd

data = [
    ['bird', 0.33333333],
    ['cat',  0.50000000],
    ['dog',  0.00000000],
]
columns = ['animal', 'black']
df = pd.DataFrame(data=data, columns=columns)
df.set_index('animal', inplace=True)
df.index = map(lambda x: 'Prob animal=({})'.format(x), df.index)
df['black'] = df['black'].apply(lambda x: '={:0>5.2f}%'.format(100 * x))

print(df.to_string(header=False))
df.to_csv('output.csv', header=False)

首选写入文件首选写入文件