在R语言中如何统计iffraud数据框中的条目数量?
统计iffraud条目数量的方法
首先要指出你创建iffraud的代码存在问题:
iffraud = class_df[class_df["type"] == "not fraud"]
class_df["type"]返回的是单列dataframe,和字符串比较后得到的也是dataframe格式的逻辑值,用它索引原dataframe会按列筛选而非按行筛选。正确的行筛选写法需要加上逗号(表示选择行,保留所有列):
# 两种正确的行筛选方式任选其一 iffraud = class_df[class_df$type == "not fraud", ] # 或用subset函数更直观 iffraud = subset(class_df, type == "not fraud")
接下来统计iffraud的条目数量(即行数),有几种常用方法:
nrow()函数(最直接):直接返回dataframe的行数nrow(iffraud)dim()函数:返回包含行数、列数的向量,取第一个元素即为行数dim(iffraud)[1]count()函数(tidyverse风格):如果习惯用dplyr工具,可加载包后使用library(dplyr) iffraud %>% count()
另外,也可以跳过创建iffraud的步骤,直接在原dataframe中统计目标行数,效率更高:
sum(class_df$type == "not fraud")
内容的提问来源于stack exchange,提问作者Rochhh999
相关产品推荐
相关产品推荐

