为什么使用CSV或XLSX数据时,Pandas图看起来有所不同?

发布于 2025-01-21 03:20:58 字数 1568 浏览 0 评论 0原文

我有两个具有完全相同数据的数据集,但以相同方式绘制时它们看起来不同。一种是 .xlsx 文件,一种是 .csv 文件。

这是两个代码: 对于 CSV:

import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from sklearn.cluster import KMeans

daten = pd.read_csv(r"Path\Übungsdaten.csv", header=0, sep=";")


print("Total rows: {0}".format(len(daten)))
print(daten.columns)

plt.scatter(daten['InsuredValue'], daten['Policy'])
plt.xlim(2500000)
plt.ylim(100100)
plt.show()

对于 xlsx:


import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from sklearn.cluster import KMeans

daten = pd.read_excel(r"Path\Übungsdaten.xlsx")


print("Total rows: {0}".format(len(daten)))

plt.scatter(daten['InsuredValue'],daten['Policy'] )

plt.xlim(2500000)
plt.ylim(100100)
plt.show()

这是两个图:

csv 和 plt.xlim(2500000) plt.ylim(100100)

csvwithxlim

和无限制的 csv:

csvwithoutretricitons

最后是 .xlsx 图:

在此处输入图像描述

我的问题首先是,为什么会有一个前两个图底部的黑条? (我猜这是“InsuredValue”的每个值)以及如何将 csv plo 形成为与 xlsx 图相同的比率?

非常感谢

i've got two datasets with the exact same data but they look different when plotted the same way. One is a .xlsx file and one is a .csv file.

Here are the two codes:
For the CSV:

import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from sklearn.cluster import KMeans

daten = pd.read_csv(r"Path\Übungsdaten.csv", header=0, sep=";")


print("Total rows: {0}".format(len(daten)))
print(daten.columns)

plt.scatter(daten['InsuredValue'], daten['Policy'])
plt.xlim(2500000)
plt.ylim(100100)
plt.show()

And for the xlsx:


import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from sklearn.cluster import KMeans

daten = pd.read_excel(r"Path\Übungsdaten.xlsx")


print("Total rows: {0}".format(len(daten)))

plt.scatter(daten['InsuredValue'],daten['Policy'] )

plt.xlim(2500000)
plt.ylim(100100)
plt.show()

Here are the two Plots:

csv with plt.xlim(2500000) plt.ylim(100100)

csvwithxlim

and the csv without restrictions:

csvwithoutrestricitons

and finally the .xlsx plot:

enter image description here

My question is first of all, why is there a black bar on the bottom of the first two plots? (im guessing this is every single value of "InsuredValue") and how can I form the csv plo to the same ratio as the xlsx plot?

Thank you very much

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

九歌凝 2025-01-28 03:20:58

我必须使用以下代码将“InsuredValue”列转换为 int:

daten.astype({'InsuredValue':'int'})

I had to convert the "InsuredValue" column to int with the following code:

daten.astype({'InsuredValue':'int'})
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文