Pembaruan bahasa R utama membawa perubahan besar

Versi 4.0.0 dari bahasa R untuk komputasi statistik telah dirilis, dengan perubahan pada sintaks bahasa serta fitur yang berkaitan dengan pemeriksaan kesalahan dan vektor panjang.

Peningkatan ini diterbitkan pada 24 April. Kode sumber untuk R 4.0.0 dapat diakses di cran.r-project.org. Sebuah proyek GNU, R telah mengumpulkan tenaga dengan munculnya ilmu data dan pembelajaran mesin, saat ini menduduki peringkat ke-10 dalam Indeks Tiobe untuk popularitas bahasa dan ketujuh dalam indeks Popularitas Bahasa Pemrograman PyPL.

Video terkait: Fitur R 4.0 baru

Perubahan dan fitur yang diperkenalkan di R 4.0.0 meliputi:

  • Sintaks baru ditawarkan untuk menentukan konstanta karakter _raw_ yang mirip dengan yang digunakan di C ++, di mana  r"..."bisa digunakan untuk mendefinisikan string literal. Ini membuatnya lebih mudah untuk menulis string yang mengandung garis miring terbalik atau tanda kutip tunggal dan ganda.
  • Bahasa sekarang menggunakan stringAsFactors = FALSEdefault, dan dengan demikian secara default tidak lagi mengonversi string menjadi faktor dalam panggilan ke data.frame()dan read.table(). Banyak paket mengandalkan perilaku sebelumnya dan perlu diperbarui.
  • Fungsi generik S3 plot()sekarang ada dalam basis paket daripada grafik paket; masuk akal untuk memiliki metode yang tidak menggunakan paket grafis. Generik saat ini diekspor ulang dari namespace grafis untuk memungkinkan paket yang mengimpornya dari sana agar tetap berfungsi, tetapi ini dapat berubah di masa mendatang. Paket yang mendefinisikan grafik S4 plot()harus diinstal ulang dan kode paket menggunakan generik semacam itu dari paket lain harus memastikan bahwa mereka diimpor daripada mengandalkan pencarian di jalur pencarian.
  • Metode S3 untuk larik kelas sekarang dikirim untuk objek matriks.
  • Penghitungan referensi sekarang digunakan sebagai pengganti mekanisme NAMED untuk menentukan kapan objek dapat dengan aman dimutasi menjadi kode dasar C. Ini mengurangi kebutuhan untuk menyalin dalam beberapa kasus dan akan memungkinkan pengoptimalan di masa mendatang. Ini juga diharapkan membantu membuat kode internal lebih mudah dipelihara.
  • assertError()dan assertWarning()dalam alat paket sekarang dapat memeriksa spesifik kesalahan atau peringatan kelas melalui argumen kedua opsional baru classes.
  • DF2formula(), utilitas untuk metode bingkai data formula(), sekarang berfungsi tanpa penguraian dan evaluasi eksplisit.
  • Vektor panjang sekarang didukung sebagai seqargumen dari sebuah for()loop.
  • matrix() sekarang mengubah kolom karakter menjadi faktor dan faktor menjadi bilangan bulat.
  • skeleton() sekarang secara eksplisit mencantumkan semua ekspor di file NAMESPACE.
  • Implementasi internal unit grid telah berubah. Satu-satunya efek yang terlihat pada tingkat pengguna adalah format cetak yang sedikit berbeda untuk beberapa unit, kinerja yang lebih cepat untuk operasi unit, dan dua fungsi baru, unitType()dan unit.psum().
  • Pencetakan methods (..)sekarang menggunakan format()metode baru .
  • Paket harus diinstal ulang di bawah versi baru R.
  • Versi R ini dibuat berdasarkan pustaka PCRE2 untuk ekspresi reguler seperti Perl jika tersedia.
  • Awal dukungan untuk C ++ 20.
  • Waktu yang dibutuhkan untuk memulai cluster PSOCK homogen di localhost dengan banyak node telah berkurang secara signifikan.
  • Ada juga sejumlah penolakan. Misalnya, buat makro F77_VISIBILITY telah dihapus dan diganti dengan F_VISIBILITY; dukungan yang tidak digunakan lagi untuk menentukan C ++ 98 untuk penginstalan paket telah dihapus; dan banyak fungsi yang tidak berfungsi telah dihapus dari paket dasar dan metode.