¿La mejor manera de almacenar grandes conjuntos de datos usando R de Twitter?


8

Estoy trabajando en un proyecto que tiene como objetivo recuperar un gran conjunto de datos (es decir, datos de tweets que tienen un par de días) de Twitter usando la biblioteca twitteR en R. Tengo dificultades para almacenar tweets porque mi máquina tiene solo 8 GB de memoria . Se quedó sin memoria incluso antes de configurarlo para recuperar por un día. ¿Hay alguna manera de almacenar los tweets directamente en mi disco sin almacenarlos en la RAM? No estoy usando la API de transmisión, ya que necesito obtener viejos tweets.


1
¿Por qué no usa Python o solo herramientas de línea de comandos para recuperar datos de Twitter, guardarlos en fragmentos (pares gzipped) y luego volver a R para su análisis?
Anton Tarasenko

¿Puede Python recuperar viejos tweets usando el método que mencionaste?
Amigo digital

Puede, pero necesitará comprar el acceso API de Twitter u otro vendedor del historial de Twitter.
Anton Tarasenko

Respuestas:


5

Encuentre una manera de hacer que su programa escriba en el disco periódicamente. Mantenga el recuento de la cantidad de tweets que obtiene y guarda después de que ese número sea alto. No escribo R pero el psuedocode podría verse así:

$tweets = get_tweets(); $count = 0; $tweet_array = array(); for each ($tweets as $tweet) { $tweet_array += $tweet; $count++; if ($count > 10000) { append_to_file($tweet_array, 'file_name.txt'); clear_array($tweet_array); } }


1
sí, podría ser posible en la programación, pero para R, la forma en que procesa los datos es bastante diferente. Estoy usando el twitteR de la biblioteca de R y el mínimo es un día. No estoy seguro de cómo voy a continuar desde el punto en que dejo de twittear si ejecuté la función searchTweets nuevamente.
Digital Dude

Ojalá supiera más sobre R para ayudarte. ¡Lo siento!
sheldonkreger

2

El otoño pasado trabajé en un proyecto de datos de Twitter en el que utilizamos bibliotecas Java para extraer datos de tweets de la transmisión y el resto de las API. Utilizamos Twitter4J (una biblioteca Java no oficial) para la API de Twitter .

Los datos del tweet se obtuvieron y se escribieron directamente en archivos de texto en nuestros discos duros. Sí, aumentamos la memoria y el montón. Creo que R studio tendrá una opción similar. Una alternativa sería obtener cantidades menores de datos de tweets con más repeticiones.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.