pd.read_table for .dat 填充空值

pd.read_table for .dat fills null values

我正在尝试使用 WesMcKinney 的 "Python for Data analysis" 学习数据分析。

有一个包含以下数据的 .dat 文件:

1::F::1::10::48067
2::M::56::16::70072
3::M::25::15::55117
4::M::45::7::02460

我正在尝试使用 :

导入它们
unames=['user_id', 'gender', 'age', 'occupation', 'zip']
users = pd.read_table('D:/INSOFE/Python_practice/users.dat', sep='::', header=None,names=unames,engine='python')

但是,它显示空值

请让我知道我做错了什么。

read_table method expects relatively clean data; if you've simply saved the web page containing the table(参见澄清评论),你最终会得到一个充满 HTML 的文件,pandas 将不知道如何处理。

相反,您需要获取文件的原始内容。原则上,您可以简单地将 GitHub 中的 6040 行复制到您喜欢的文本编辑器中,并将内容保存为 users.dat.

GitHub 通过提供 raw data 的视图,让您的生活变得更简单。

因此,如果您选择保存文件,大多数浏览器(包括 Firefox)将生成仅包含数据的正确 users.datwget or curl 等命令行工具使您无需使用 fully-fledged 浏览器即可获得相同的数据。