python - 使用 Table.read_table 比使用 pd.read_csv 有优势吗?
问题描述
到目前为止,Table.read_table 一直让我头疼,因为它不适用于 seaborn 和 matplotlib。然而,这是我的一堂课所教的。
我正在读这本书,它有 pd.read_csv 并且效果很好。我可以做 seaborn、matplotlib 和其他库。
总之,我不知道“Table.read_table”的目的是什么,因为它似乎限制了其他库。
我相信数组也有类似的东西。例如 'array([8, 3, 3])' 和 '([8, 3, 3])' 不是一回事,但是要使用其他函数进行一些数据分析,需要正确选择做完了。似乎有很多变化(我已经提到了两个),我会很感激有关如何正确整理它们的提示,或者它可能只是经验带来的。
例子:
代码1(不起作用):
data = Table.read_table('IndiaStatus.csv').drop('Discharged', 'Discharge Ratio (%)','Total Cases','Active','Deaths')
sns.jointplot(data=data, x="Death Ratio (%)", y="Active Ratio (%)")
代码2(确实有效):
df = pd.read_csv('IndiaStatus.csv' )
sns.jointplot(data=df, x="Death Ratio (%)", y="Active Ratio (%)")
解决方案
read_table 是用 sep=',' 替换为 sep='\t' 的 read_csv,它们是同一函数的两个薄包装器,因此性能相同。read_excel 使用 xlrd 包将 xls 和 xlsx 文件读入 DataFrame,它不处理 csv 文件。
对于相同的 320 MB CSV 文件(16 MB .xlsx)(i7-7700k,SSD,运行 Anaconda Python 3.5.3,Pandas 0.19.2)
使用标准约定 import pandas as pd
2 秒读取 .csv df = pd.read_csv('foo.csv') (对于 pd.read_table 相同)
15.3 秒读取 .xlsx df = pd.read_excel('foo.xlsx')
10.5 秒写入 .csv df.to_csv('bar.csv', index=False) (对于 .txt 相同)
34.5 秒写入 .xlsx df.to_excel('bar.xlsx', sheet_name='Sheet1', index=False)
推荐阅读
- c# - 绑定数据未显示在网格中
- javascript - HTML 多选在 optgroup 文本之前添加可点击的输入复选框
- sql - designing a follower/following schema between two tables in SQL?
- python - 基于具有浮点数的一列对 2d numpy 数组进行排序
- javascript - HTML 画布功能不适用于移动设备
- azure-devops - 在发布管道期间将发布号添加到 Web.config
- ios - setValue:forUndefinedKey 在 AppDelegate
- python-3.x - Tensorflow 2.5 限制 GPU 内存使用
- .net-core - 在 AWS API Gateway 上的 .NET Core 3.1 上的 AWS Lambda 函数中使用 OData
- java - JsonDeserialize 构建结果到 json