我正在尝试使用PrettyTable创建一个性能度量表。在给定表格布局的情况下,最好使用指标列表和带有add_column选项的值列表逐列填充表。但是,当我尝试这样做时,输出在一行中给出了所有列表值:
from prettytable import PrettyTable
mse=123
mae=456
r2=789
performance_metrics=['Mean Squared Error', 'Mean Absolute Error', 'R-Squared']
values=[mse, mae, r2]
#CREATE TABLE
table = PrettyTable()
table.title = 'Model Performance'
column_names=['Metric', 'Value']
table.add_column(column_names[0],[performance_metrics])
table.add_column(column_names[1],[values])
print(table)
+------------------------------------------------------------------------------+
| Model Performance |
+------------------------------------------------------------+-----------------+
| Metric | Value |
+------------------------------------------------------------+-----------------+
| ['Mean Squared Error', 'Mean Absolute Error', 'R-Squared'] | [123, 456, 789] |
+------------------------------------------------------------+-----------------+我如何才能在不单独添加每行的情况下修复这个问题呢?
更新:重新阅读问题,我意识到我忘记了附加所需的输出,这显然类似于以下内容:
+------------------------------------------------------------------------------+
| Model Performance |
+------------------------------------------------------------+-----------------+
| Metric | Value |
+------------------------------------------------------------+-----------------+
| Mean Squared Error | 123 |
+------------------------------------------------------------+-----------------+
| Mean Absolute Error | 456 |
+------------------------------------------------------------+-----------------+
| R-Squared | 789 |
+------------------------------------------------------------+-----------------+发布于 2021-10-01 09:58:51
您必须尝试使用循环来执行该操作,此时您正在将整个列表添加到一列中:
from prettytable import PrettyTable
mse=123
mae=456
r2=789
performance_metrics=['Mean Squared Error', 'Mean Absolute Error', 'R-Squared']
values=[mse, mae, r2]
#CREATE TABLE
table = PrettyTable()
table.title = 'Model Performance'
column_names=['Metric', 'Value']
table.field_names = [column_names[0], column_names[1]]你必须使用add_row来滥用多个相同的列:
for i in range(len(performance_metrics)):
table.add_row([performance_metrics[i],values[i]])
print(table)输出:
+-----------------------------+
| Model Performance |
+---------------------+-------+
| Metric | Value |
+---------------------+-------+
| Mean Squared Error | 123 |
| Mean Absolute Error | 456 |
| R-Squared | 789 |
+---------------------+-------+https://stackoverflow.com/questions/69403528
复制相似问题