如何使用for循环和grep表达式转换列?

如何使用for循环和grep表达式转换列?,r,R,我有一个airbnb的数据集,其中一个变量是便利设施。“便利设施”一栏列出了主人提供的所有便利设施。提供的便利设施总数是多少?将其转换为指示提供的便利设施数量的数值。例如,如果“便利设施”的实例为{TV、Internet、Wi-Fi、洗衣机},则应将其转换为4。将其作为列添加到数据帧。我很困惑如何做到这一点。其中一些设施多达50种不同的设施。手工制作矢量将花费很长时间 对于airbnb数据集,我也对此感到困惑。在我们进行任何涉及计算的进一步分析之前,我们应该首先清理数据以进行数学运算。例如,字符

我有一个airbnb的数据集,其中一个变量是便利设施。“便利设施”一栏列出了主人提供的所有便利设施。提供的便利设施总数是多少?将其转换为指示提供的便利设施数量的数值。例如,如果“便利设施”的实例为{TV、Internet、Wi-Fi、洗衣机},则应将其转换为4。将其作为列添加到数据帧。我很困惑如何做到这一点。其中一些设施多达50种不同的设施。手工制作矢量将花费很长时间


对于airbnb数据集,我也对此感到困惑。在我们进行任何涉及计算的进一步分析之前,我们应该首先清理数据以进行数学运算。例如,字符“$”出现在“价格”列中,使数据类型为“价格”字符而不是数字。删除此列中的“$”和“,”并将数据类型转换为数字(修改原始数据)。我相信我必须使用grep表达式。

如果您在数据帧上有这些信息,您应该尝试使用strsplit函数:

sapply(strsplit(data.frame$amenities,","),length)

对于字符的子替换,请尝试gsub函数

长度(strsplit(…)
我尝试过,但在strsplit(air$便利设施,“,”)中出现错误:非字符参数计算便利设施的一种非常简单的方法是计算逗号并添加1。。。