Cara terbaik untuk menyimpan kumpulan data besar menggunakan R dari Twitter?

8

Saya sedang mengerjakan sebuah proyek yang bertujuan untuk mengambil set data yang besar (yaitu, data tweet yang berumur beberapa hari) dari Twitter menggunakan perpustakaan twitteR di R. mengalami kesulitan menyimpan tweet karena mesin saya hanya memiliki memori 8 GB . Kehabisan memori bahkan sebelum saya mengaturnya untuk mengambil selama satu hari. Apakah ada cara di mana saya dapat menyimpan tweet langsung ke disk saya tanpa menyimpan ke dalam RAM? Saya tidak menggunakan streaming API karena saya perlu mendapatkan tweet lama.

Bung Digital
sumber
1
Mengapa Anda tidak menggunakan Python atau hanya alat baris perintah untuk mengambil data Twitter, menyimpannya dalam potongan (datar gzipped), dan kemudian kembali ke R untuk analisis?
Anton Tarasenko
Bisakah python mengambil tweet lama menggunakan metode yang Anda sebutkan?
Digital Bung
Itu bisa, tetapi Anda harus membeli akses API dari Twitter atau penjual lain dari riwayat Twitter.
Anton Tarasenko

Jawaban:

5

Temukan cara untuk membuat program Anda menulis ke disk secara berkala. Pertahankan hitungan jumlah tweet yang Anda ambil dan simpan setelah angka itu tinggi. Saya tidak menulis R tetapi psuedocode mungkin terlihat seperti:

$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); } }

sheldonkreger
sumber
1
ya itu mungkin dalam pemrograman, tetapi untuk R, cara memproses data sangat berbeda. Saya menggunakan twitteR perpustakaan dari R dan min itu mengambil adalah satu hari. Saya tidak yakin bagaimana saya akan melanjutkan dari titik saya berhenti tweet jika saya menjalankan func searchTweets lagi.
Bung Digital
Seandainya saya tahu lebih banyak tentang R untuk membantu Anda. Maaf!
sheldonkreger
2

Saya bekerja pada proyek data Twitter musim gugur lalu di mana kami menggunakan perpustakaan Java untuk menarik data tweet dari streaming dan API sisanya. Kami menggunakan Twitter4J (perpustakaan Java tidak resmi) untuk API Twitter .

Data tweet diambil dan langsung ditulis ke file teks pada hard drive kami. Ya, kami memang meningkatkan memori dan tumpukan. Saya percaya R studio akan memiliki opsi serupa. Alternatifnya adalah dengan menarik jumlah data tweet yang lebih sedikit dengan jumlah pengulangan yang lebih banyak.

program tanpa judul
sumber