R# 言語は、バイオインフォマティクス データ分析のために .NET 環境に実装される R に似た言語の一種です。
[警告] このプロジェクトは進行中のものであり、実稼働環境での使用は推奨されません。
最新の sciBASIC.NET Framework ランタイムも必要です
R#
言語の構文は元々 R
言語から派生したものですが、プログラミング スタイルはより現代化されています。 R#
言語のインタプリタと .NET コンパイラは、元々 VisualBasic 言語で書かれており、.NET ランタイムをネイティブにサポートしています。
R#
言語は一般的なデータ分析を目的として設計されたものではありませんが、会社での私の仕事に特化して設計されており、GCModeller プラットフォームに基づいてバイオインフォマティクス データ分析システムを実装し、R および VisualBasic 言語でバイオインフォマティクス データ サイエンス スタックを構築します。 。
R#
R# 言語コア ランタイムおよびスクリプト エンジンLibrary
R# スクリプト システムの基礎ライブラリRscript
R# スクリプト ホストR-terminal
R# シェル プログラムRsharp_kit
R-sharp ツールキットnjl
Julia 言語はスクリプト エンジンが好きでしたnpy
Python 言語に好まれたスクリプト エンジンRData
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!"
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#
の ggplotAR 言語 ggplot2 パッケージは、R# 言語プログラミング用のグラフィックス ライブラリの文法を好みました。
R#
言語は、.NET ランタイム用に設計されたもう 1 つの科学技術コンピューティング言語であり、 R#
は R 言語から進化したものです。 R言語にはggplot2
という有名なグラフィックスライブラリがあるのですが、それと同じようにR#
言語用に開発されたggplot
というグラフィックスライブラリがあります。
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 )
)
;
R#
システムは、R# 言語をサポートするだけでなく、 R#
ランタイム上で実行される Python 言語スクリプトと Julia 言語スクリプト エンジンも含みます。
他のR#
スクリプトをインポートするのと同じように、 R#
言語での Python スクリプトまたは julia スクリプトの参照:
# 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 " ;
また、Python または julia スクリプトで R スクリプトをインポートすることもできます。
# 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"
Python とR#
スクリプトを julia スクリプトにインポートすることも簡単です。
# 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
// --------------------------------------------------------------------------------------------------------------
// <mode> <string>
// [1, ] "CTGTGCAATTGCTGAGAACAAATGAGACGCTGTGCAATTGCAAATGATACGCTGTGCAATTGCTAGAAACAAATGAGACGCTGTGCAATTGCTGAGTACC"
// [2, ] "...................................................................AACAAATGAGACGCTGTGCAATTGCTGA....."
// [3, ] "................AACAAATGAGACGCTGTGCAATTGCAAA........................................................"
// [4, ] ".....................................................................CAAATGAGACGCTGTGCAATTGCTGAGT..."
// [5, ] ".......................................GCAAATGATACGCTGTGCAATTGCTAGA................................."
// [6, ] "........................................................................ATGAGACGCTGTGCAATTGCTGAGTACC"
// [7, ] "CTGTGCAATTGCTGAGAACAAATGAGAC........................................................................"
// [8, ] "...................................................CTGTGCAATTGCTAGAAACAAATGAGAC....................."
R#
パッケージ リソースR# プログラミング環境用に開発されたパッケージ: