我在这里很新,我正在寻找R as.matrix()的帮助,在文本挖掘过程中代码将在下面。
我正在使用378661 obs。 1个变量。
<?php
$message = "";
$errors = array();
if (isset($_POST['uploadImg'])) {
// getting data needed from the image
$image = $_FILES['image'];
$imageName = $_FILES['image']['name'];
$imageTmpName = $_FILES['image']['tmp_name'];
$imageSize = $_FILES['image']['size'];
$imageError = $_FILES['image']['error'];
$imageType = $_FILES['image']['type'];
$imageInfo = getimagesize($_FILES['image']['tmp_name']);
$imageWidth = $imageInfo[0];
$imageHeight = $imageInfo[1];
// seperates the image name from the image extension
$getImageExt = explode('.', $imageName);
// puts all extensions to lowercase to prevent exceptions e.g. JPEG not being accepted
$imageExt = strtolower(end($getImageExt));
// array containg the allowed file types
$allowed = array(
'jpg',
'jpeg',
'png',
'tiff'
);
// checks if the file extension exists in the array
if (!in_array($imageExt, $allowed)) {
$errors[ext] = "Invalid file format";
}
// checks if there are any errors with the image
if (!$imageError === 0) {
$errors[image] = "Error with your file";
}
// checks if the file size is less than 1MB
if (!$imageSize < 1000000) {
$errors[size] = "File is to big";
}
// check if the image width is less than or equal to 1024px
if (!$imageWidth <= 1024) {
$errors[width] = "Image width is limited to 1024px for layout purposes";
}
// check if image height is less than or equal to 768 pixels
if (!$imageHeight <= 768) {
$errors[height] = "Image height is limited to 768px for layout purposes";
}
if (empty($errors)) {
// inserts the uploaded image into the 'images' directory
$imageDestination = 'images/' . $imageName;
move_uploaded_file($imageTmpName, $imageDestination);
} else {
$message = "Something Went Wrong";
}
}
?>
在控制台上出现以下错误:
错误:无法分配大小为466.8 Gb的矢量
当我使用as.matrix()时。我很失落,我非常感谢这个问题的帮助。谢谢。
编辑:macOS High Sierra版本10.13.4&amp;内存16GB
答案 0 :(得分:0)
正如我在对Text Mining in R | memory management的回答中所指出的,R中矩阵中的每个单元消耗8个字节。因此,矩阵的大小(以字节为单位)是文档数*项数* 8.当将稀疏文档术语矩阵转换为完整矩阵时,稀疏DTM中的空单元会占用大量RAM。
根据您在问题中提供的数据,您尝试转换为矩阵的DTM中约有165,459个术语。
> sizeInGb <- 466.8
> docs <- 378661
> # calculate number of terms in DTM
> sizeInGb * (1024 * 1024 * 1024) / (docs * 8)
[1] 165458.9
根据您尝试进行的分析类型,您需要使用文本挖掘包中与文档术语矩阵一起使用的工具来分析数据,或者聚合到小于您在计算机上拥有的RAM量(减去用于创建它的对象所消耗的RAM)。