Bahasa R# adalah sejenis implementasi bahasa yang disukai R pada lingkungan .NET untuk analisis data bioinformatika
[PERINGATAN] Proyek ini sedang dalam proses dan tidak direkomendasikan untuk penggunaan produksi.
Runtime sciBASIC.NET Framework terbaru juga diperlukan
Bahasa R#
sintaksnya asli berasal dari bahasa R
, tetapi dengan gaya pemrograman yang lebih modern. Bahasa R#
, penerjemahnya dan kompiler .NET asli ditulis dalam bahasa VisualBasic, dengan dukungan asli untuk runtime .NET.
Bahasa R#
tidak dirancang untuk tujuan analisis data umum, tetapi dirancang khusus untuk pekerjaan saya di perusahaan, mengimplementasikan sistem analisis data bioinformatika berdasarkan platform GCModeller, untuk membangun tumpukan ilmu data bioinformatika dengan bahasa R dan VisualBasic .
R#
Runtime inti bahasa R# dan mesin skripLibrary
Perpustakaan fundasi dalam sistem skrip R#Rscript
Host skrip R#R-terminal
Program shell R#Rsharp_kit
Perangkat R-sharpnjl
Bahasa Julia menyukai mesin skripnpy
Bahasa Python menyukai mesin skripRData
Pembaca file data bahasa R *.rda/*.rds
# declare a variable
let word as string = [ ' world ' , ' R# user ' , ' GCModeller user ' ];
# declare a function
let echo as function ( words ) {
print( `Hello ${ words }!` );
}
# or declare a lambda function
let echo.lambda = words - > print( `Hello ${ words }!` );
# and then invoke function via pipeline operator
word : > echo ;
# [3] "Hello world!" "Hello R# user!" "Hello GCModeller user!"
word : > echo.lambda ;
# [3] "Hello world!" "Hello R# user!" "Hello GCModeller user!"
Digunakan dalam pemrograman VisualBasic.NET:
Dim R As New RInterpreter()
' Run script by invoke method
Call R.Evaluate( "
# test script
let word as string = [ 'world', 'R# user', 'GCModeller user'];
let echo as function (words) {
print( ` Hello $ { words }! ` ) ;
}
word :> echo ;
" )
' or assign variable
Call R.Add( "word" , { "world" , "R# user" , "GCModeller user" })
' then declare R function throught script
Call R.Add( "echo" ,
Function (words As String ()) As String ()
Return Internal.print(words)
End Function )
' at last, invoke R function throught Invoke method
Call R.Invoke( "echo" , R!word)
# read scatter point data from a given table file
# and then assign to tuple variables
[ x , y , cluster ] = read.csv( " ./scatter.csv " , row.names = NULL );
# umap scatter with class colors
bitmap( file = " ./scatter.png " ) {
plot( x , y ,
padding = " padding:200px 400px 200px 250px; " ,
class = cluster ,
title = " UMAP 2D Scatter " ,
x.lab = " dimension 1 " ,
y.lab = " dimension 2 " ,
legend.block = 13 ,
colorSet = " paper " ,
grid.fill = " transparent " ,
size = [ 2600 , 1600 ]
);
};
R#
Paket ggplot2 bahasa AR menyukai tata bahasa perpustakaan grafis untuk pemrograman bahasa R#.
Bahasa R#
adalah bahasa komputasi ilmiah lain yang dirancang untuk runtime .NET, R#
berevolusi dari bahasa R. Ada perpustakaan grafis terkenal bernama ggplot2
dalam bahasa R, jadi tetap sama, ada perpustakaan grafis bernama ggplot
yang dikembangkan untuk bahasa R#
.
ggplot( myeloma , aes( x = " molecular_group " , y = " DEPDC1 " ))
+ geom_boxplot( width = 0.65 )
+ geom_jitter( width = 0.3 )
# Add horizontal line at base mean
+ geom_hline( yintercept = mean( myeloma $ DEPDC1 ), linetype = " dash " , line.width = 6 , color = " red " )
+ ggtitle( " DEPDC1 ~ molecular_group " )
+ ylab( " DEPDC1 " )
+ xlab( " " )
+ scale_y_continuous( labels = " F0 " )
# Add global annova p-value
+ stat_compare_means( method = " anova " , label.y = 1600 )
# Pairwise comparison against all
+ stat_compare_means( label = " p.signif " , method = " t.test " , ref.group = " .all. " , hide.ns = TRUE )
+ theme(
axis.text.x = element_text( angle = 45 ),
plot.title = element_text( family = " Cambria Math " , size = 16 )
)
;
Sistem R#
tidak hanya mendukung bahasa R#, tetapi juga mencakup skrip bahasa python dan mesin skrip bahasa Julia yang berjalan pada runtime R#
.
Referensi skrip python atau skrip julia dalam bahasa R#
sama seperti mengimpor skrip R#
lainnya:
# imports an external R# script
imports " ./script.R " ;
# imports an external python script in R#
imports " ./script.py " ;
# imports an external julia script in R#
imports " ./script.jl " ;
Dan Anda juga dapat mengimpor skrip R dalam skrip python atau julia:
# example of import R#/julia script in python
# imports an external R# script in python
import "./script.R"
# imports an external julia script in python
import "./script.jl"
mengimpor skrip python dan R#
dalam skrip julia juga tetap mudah:
# example of imports R#/python script in julia
# imports an external R# script in julia
include ( " ./script.R " )
# imports an external python script in julia
include ( " ./script.py " )
require ( "GCModeller" ) ;
// load the fastq module from rna-seq package
// inside the GCModeller
import { FastQ } from "rnaseq" ;
// do short reads assembling via SCS algorithm
var assem = FastQ . assemble ( [
"AACAAATGAGACGCTGTGCAATTGCTGA" ,
"AACAAATGAGACGCTGTGCAATTGCAAA" ,
"CAAATGAGACGCTGTGCAATTGCTGAGT" ,
"GCAAATGATACGCTGTGCAATTGCTAGA" ,
"ATGAGACGCTGTGCAATTGCTGAGTACC" ,
"CTGTGCAATTGCTGAGAACAAATGAGAC" ,
"CTGTGCAATTGCTAGAAACAAATGAGAC"
] )
// view the short reads assemble result
console . table ( assem )
// Loading required package: GCModeller
// Loading required package: igraph
// Attaching package: 'igraph'
//
// The following object is masked from 'package:igraph':
//
// eval, class
//
//
//
// GCModeller: genomics CAD(Computer Assistant Design) Modeller System
// author by: [email protected]
//
// (c) 2023 | SMRUCC genomics - GuiLin, China
//
// AssembleResult
// --------------------------------------------------------------------------------------------------------------
//
// [1, ] "CTGTGCAATTGCTGAGAACAAATGAGACGCTGTGCAATTGCAAATGATACGCTGTGCAATTGCTAGAAACAAATGAGACGCTGTGCAATTGCTGAGTACC"
// [2, ] "...................................................................AACAAATGAGACGCTGTGCAATTGCTGA....."
// [3, ] "................AACAAATGAGACGCTGTGCAATTGCAAA........................................................"
// [4, ] ".....................................................................CAAATGAGACGCTGTGCAATTGCTGAGT..."
// [5, ] ".......................................GCAAATGATACGCTGTGCAATTGCTAGA................................."
// [6, ] "........................................................................ATGAGACGCTGTGCAATTGCTGAGTACC"
// [7, ] "CTGTGCAATTGCTGAGAACAAATGAGAC........................................................................"
// [8, ] "...................................................CTGTGCAATTGCTAGAAACAAATGAGAC....................."
R#
TerkaitPaket yang dikembangkan untuk lingkungan pemrograman R#: