Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
BASIC-R数据类型问题;键入整数并包含多个';级别';?_R_Integer_R Factor_Levels - Fatal编程技术网

BASIC-R数据类型问题;键入整数并包含多个';级别';?

BASIC-R数据类型问题;键入整数并包含多个';级别';?,r,integer,r-factor,levels,R,Integer,R Factor,Levels,我对美丽的R语言还不熟悉,目前我在理解以下方面有困难: 我正在加载一个CSV文件。此CSV文件包含两列。第一列是唯一的ID。第二列名为“内容”。内容列基本上是来自特定URL的所有可读文本 如果我打印第二列第一行的内容,我将得到以下输出 Text[1:1,2:2] [1] Autoservice Hofra Home \xa0 Home Contact \xa0 Autoservice Hofra \xa0 Home Contact Autoservice Hofra Welkom op onz

我对美丽的R语言还不熟悉,目前我在理解以下方面有困难:

我正在加载一个CSV文件。此CSV文件包含两列。第一列是唯一的ID。第二列名为“内容”。内容列基本上是来自特定URL的所有可读文本

如果我打印第二列第一行的内容,我将得到以下输出

Text[1:1,2:2]
[1] Autoservice Hofra  Home \xa0 Home Contact \xa0 Autoservice Hofra \xa0 Home Contact Autoservice Hofra Welkom op onze website \xa0 \xa0LASSA BANDEN DEALER \xa0 Wanneer is mijn auto toe aan een onderhouds inspectie Iedere auto heeft een instructieboekje Dat ligt meestal in het dashboardkastje van uw auto In dat boekje staat hoe en wanneer u de auto onderhoudt Autoservice Hofra Albert Einsteinweg 12 6045 GX Roermond Tel 0654965305 Kleine en grote beurt Bij Autoservice Hofra kun je terecht voor een grote en kleine beurt voor de zomer en winter checks maar ook airco onderhoud Zo zorgen we dat je niet alleen veilig en comfortabel de weg op gaat maar ook nog eens extra lang plezier hebt van je auto \xa0 We vervangen motorolie en het oliefilter vullen de ruitenvloeistof koelvloeistof en remvloeistof bij en houden rekening met de milieutoeslag Een groot deel van de checks die bij een APK worden gedaan komen ook bij de grote beurt aan bod Het is daarom voordelig om deze te combineren De motormanagement van de auto wordt zorgvuldig uitgelezen met diagnose apparatuur waardoor storingen en andere meldingen aan het licht komen \xa0 \xa0 \xa0 Airco Check \xa0Houdt de airco uw auto op de juiste temperatuur Ontwasemt de airco de autoruit slecht En blaast hij nog frisse lucht Doe de Airco Check Ook als het geen zomer is Wij voeren alle voorkomende onderhoudswerkzaamheden uit aan uw auto voor een zeer scherpe prijs Bij een duurdere reparatie wordt er te allen tijde overleg gepleegd met u Daarnaast zijn we in het bezit van de juiste kennis en gereedschappen om alle voorkomende reparaties uit te voeren \xa0\xa0Laat de werkzaamheden uitvoeren wanneer u dat uitkomt Home \xa0 \xa0 Contact
5432 Levels:  ...
如果我打印第二列的第一行的类型,我会得到整数类型

有人能解释一下为什么特定列在包含字符时有“integer”类型吗。我也对“5432级:…”部分感到困惑。R中的“级别”是什么意思

最后,我想做的是将“内容”列的每一行转换为字符,这样我就可以应用例如删除长度<200的所有行,我的代码:

SText <- subset(Text, nchar(as.character(content)) > 200)

我怎样才能解决这个问题?任何帮助和信息都将不胜感激

在后台,出于效率考虑,因子存储为数字。默认情况下,
read.csv()
将字符列读取为因子(这在统计世界中是有意义的),因此它是一个整数。您应该在
read.csv()
上使用
stringsAsFactors=FALSE
来获取字符向量(不是因子)

5432等级:…
指本栏中包含的系数等级。因子始终跟踪其所有原始可能的水平。因此,即使只提取一个元素,它仍将包含有关级别的所有信息

typeof()
不是您需要了解对象内容时应该使用的函数。如中所述,
typeof()
返回对象的内部表示形式。因此得到的是
整数

您应该试试
class()

  • 通过指定stringsAsFactors=FALSE读取csv


    DF该列已作为因子而不是字符导入。通过在
    read.csv()
    函数中指定stringsAsFactors参数,可以明确告诉R不要将字符列视为因子。整数类型很可能是因为列存储为factor。如果您是R新手,请开始使用
    class()
    而不是
    typeof()
    。后者没有告诉你对象是如何行为的。这里有一些关于因素的背景知识,我花了一些时间才理解。对于许多情况,使用
    stringsAsFactors=FALSE
    会更简单。接下来,因子可能非常有用,例如,如果您想对绘图的类别进行排序(而不是按字母顺序)。在此添加其他答案。有时也可以通过在导入数据时指定
    na.strings
    来避免这种情况。
    SText <- subset(Text, nchar(as.character(content)) > 200)
    
    Error in type(Text[1:1, 2:2]) : could not find function "type"