Python Pandas 和R data.table的区别
发布时间:2021-06-03 16:08:39 所属栏目:大数据 来源:互联网
导读:我们将介绍的示例是常见的数据分析和操作操作。因此,您可能会经常使用它们。 我们将使用Kaggle上提供的墨尔本住房数据集作为示例。我将使用谷歌Colab(Pandas )和RStudio(data.table)作为开环境。让我们首先导入库并读取数据集。 # pandas import pandas as
我们将介绍的示例是常见的数据分析和操作操作。因此,您可能会经常使用它们。
我们将使用Kaggle上提供的墨尔本住房数据集作为示例。我将使用谷歌Colab(Pandas )和RStudio(data.table)作为开环境。让我们首先导入库并读取数据集。
# pandas
import pandas as pd
melb = pd.read_csv("/content/melb_data.csv")
# data.table
library(data.table)
melb <- fread("datasets/melb_data.csv")
示例1
第一个示例是关于基于数据集中的现有列创建新列。这是特征工程过程中常见的操作。这两个库都提供了完成此任务的简单方法。
# pandas
melb["Price_per_area"] = melb["Price"] / melb["Landsize"]
# data.table
melb[, Price_per_area := Price / Landsize]
5个例子比较Python Pandas 和R data.table
示例2
对于第二个示例,我们通过应用几个过滤器创建原始数据集的子集。这个子集包括价值超过100万美元,类型为h的房子。
# pandas
subset = melb[(melb.Price > 1000000) & (melb.Type == "h")]
# data.table
subset <- melb[Price > 1000000 & Type == "h"]
对于pandas,我们提供dataframe的名称来选择用于过滤的列。另一方面,data.table仅使用列名就足够了。
示例3
在数据分析中使用的一个非常常见的函数是groupby函数。它允许基于一些数值度量比较分类变量中的不同值。
例如,我们可以计算出不同地区的平均房价。为了使示例更复杂一些,我们还对房子类型应用一个过滤器。
# pandas
melb[melb.Type == "u"].groupby("Regionname").agg(
avg_price = ("Price", "mean")
)
# data.table
melb[Type == "u", .(avg_price = mean(Price)), by="Regionname"]
5个例子比较Python Pandas 和R data.table
pandas使用groupby函数执行这些操作。对于data.table,此操作相对简单一些,因为我们只需要使用by参数即可。
(编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |