除了我想控制输出显示的小数位数外,我有一个运行良好的小脚本。
我以为我找到了我需要的东西:
以及Stackoverflow上的其他一些类似帖子。
我的代码运行没有错误,但是两个print语句生成的输出完全相同。
将输出限制为n个小数位的正确方法是什么? (在这个示例中我要2)。
代码:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model
# from timeit import Timer
file = 'd:\\python\\codebasics\\machine_learning\\homeprices.csv'
df = pd.read_csv(file)
print(df)
print()
plt.xlabel('area(sqr ft)')
plt.ylabel('price(US$)')
plt.scatter(df.area, df.price, color='red', marker='+')
plt.show()
reg = linear_model.LinearRegression()
reg.fit(df[['area']], df.price)
print(reg.predict(3300))
print("{:2}".format(str(np.array(reg.predict(3300)))))
[628715.75342466]
[628715.75342466]
答案 0 :(得分:0)
Replace "{:2}"
with "{:.2f}"
does what you want. f
means that it's float while .2
means two decimals.