kkk = 980

Variable Type


# number variable
num_var = 10
num_var2 = 20.5

# char variable -> letter, sentence
char_var = "This is a char variable"
char_var2 ="এই টা একটা char variable "
char_var3 = 'this is another char variable'

char_var2
[1] "এই টা একটা char variable "
# logical variable 
logic1 = TRUE
logic2 = FALSE

char_var2
[1] "এই টা একটা char variable "
# vector
num_vec = c( 1, 5 ,10, 50, 65 )
fish_vec = c( "hilsha", "Ruhi", "Telapia" )
fish_vec
[1] "hilsha"  "Ruhi"    "Telapia"
kjsdjkn 
[1] 100
kkk 
[1] 980
apple = 1000
kjsdjkn = 100
print(char_var2)
print.noquote(char_var2)
all_type_vec = c("Char", 19, 10, -57, FALSE, "jhksdf")
all_type_vec
[1] "Char"   "19"     "10"     "-57"    "FALSE"  "jhksdf"
all_type_vec = 100

Arithmetic Operation


a = 10
b = 5

# Add
add = a+b

#minus
sub = a - b

#Division
div = a/b

#Multiplication
mult = a*b

# power 
p = a^2

#Modulo
m = a %% b
m2 = a %% 3
cat(add, sub, div, mult, p, m, m2)
15 5 2 50 100 0 1

Combined calculation

c = (10 +- (5-2) * 20 + (20-10))*10
c
[1] -400

String

?paste

Concatenation or Merge

var1 = "This is a variable."
var2 = "I am another variable."

combined = paste(var1, var2, var1, var2, sep = " - ")
combined
[1] "This is a variable. - I am another variable. - This is a variable. - I am another variable."
var1 = "GTAC"
var2 = "ATGCA"
paste(var1, var2, sep="")
[1] "GTACATGCA"

Segment

var = "GTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCA"

x3 = substr(var, start = 12, stop = 16) # 12 13 14 15 16
x1 = substr(var, start = 10, stop = 20)
x2 = substr(var, start = 12, stop = 25)

x = c(x1, x2, x3)

Length

nchar(var)
[1] 63
nchar(x)
[1] 11 14  5

Pattern Exists?

gene_seq = "GTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCA"
pattern1 = "ATGCCCCA"
pattern2 = "TGCAG"

grepl(pattern1, gene_seq)
[1] FALSE
grepl(pattern2, gene_seq)
[1] TRUE

Pattern Matching

gene_seq = "GTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCAGTACATGCA"
pattern1 = "ATGCCCCA"
pattern2 = "TGCAG"

matches = gregexpr(pattern2, gene_seq)
matches = unlist(matches)
matches
[1]  6 15 24 33 42 51
matches = gregexpr(pattern1, gene_seq)
matches = unlist(matches)
matches
[1] -1

Split

gene_seq = "GTACATGCAGT,ACATGCAGTACA,TGCAGTACATGCA,GTACA,TGCAGTAC,ATGCAGTACAT,GCA"
gene_vec = strsplit(gene_seq, split = ",")
gene_vec
[[1]]
[1] "GTACATGCAGT"   "ACATGCAGTACA"  "TGCAGTACATGCA" "GTACA"         "TGCAGTAC"      "ATGCAGTACAT"   "GCA"          
gene_seq = "GTACATGCAGT ACATGCAGTACA TGCAGTACATGCA GTACA TGCAGTAC ATGCAGTACAT GCA"
gene_vec = strsplit(gene_seq, split = " ")
gene_vec
[[1]]
[1] "GTACATGCAGT"   "ACATGCAGTACA"  "TGCAGTACATGCA" "GTACA"         "TGCAGTAC"      "ATGCAGTACAT"   "GCA"          

Reverse

library(stringi)
gene_seq = "This is a cat"

rev_gene_seq = stri_reverse(gene_seq)
rev_gene_seq
[1] "tac a si sihT"
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3J9CmtrayA9IDk4MApgYGAKCgojIFZhcmlhYmxlIFR5cGUKYGBge3J9CgojIG51bWJlciB2YXJpYWJsZQpudW1fdmFyID0gMTAKbnVtX3ZhcjIgPSAyMC41CgojIGNoYXIgdmFyaWFibGUgLT4gbGV0dGVyLCBzZW50ZW5jZQpjaGFyX3ZhciA9ICJUaGlzIGlzIGEgY2hhciB2YXJpYWJsZSIKY2hhcl92YXIyID0i4KaP4KaHIOCmn+CmviDgpo/gppXgpp/gpr4gY2hhciB2YXJpYWJsZSAiCmNoYXJfdmFyMyA9ICd0aGlzIGlzIGFub3RoZXIgY2hhciB2YXJpYWJsZScKCmNoYXJfdmFyMgoKIyBsb2dpY2FsIHZhcmlhYmxlIApsb2dpYzEgPSBUUlVFCmxvZ2ljMiA9IEZBTFNFCgpjaGFyX3ZhcjIKCiMgdmVjdG9yCm51bV92ZWMgPSBjKCAxLCA1ICwxMCwgNTAsIDY1ICkKZmlzaF92ZWMgPSBjKCAiaGlsc2hhIiwgIlJ1aGkiLCAiVGVsYXBpYSIgKQpmaXNoX3ZlYwoKCmtqc2Rqa24gCgpra2sgCmBgYAogCgpgYGB7cn0KYXBwbGUgPSAxMDAwCmtqc2Rqa24gPSAxMDAKYGBgCgoKYGBge3J9CnByaW50KGNoYXJfdmFyMikKcHJpbnQubm9xdW90ZShjaGFyX3ZhcjIpCmBgYAoKCgpgYGB7cn0KYWxsX3R5cGVfdmVjID0gYygiQ2hhciIsIDE5LCAxMCwgLTU3LCBGQUxTRSwgImpoa3NkZiIpCmFsbF90eXBlX3ZlYwpgYGAKCgpgYGB7cn0KYWxsX3R5cGVfdmVjID0gMTAwCmBgYAoKCiMgQXJpdGhtZXRpYyBPcGVyYXRpb24KYGBge3J9CgphID0gMTAKYiA9IDUKCiMgQWRkCmFkZCA9IGErYgoKI21pbnVzCnN1YiA9IGEgLSBiCgojRGl2aXNpb24KZGl2ID0gYS9iCgojTXVsdGlwbGljYXRpb24KbXVsdCA9IGEqYgoKIyBwb3dlciAKcCA9IGFeMgoKI01vZHVsbwptID0gYSAlJSBiCm0yID0gYSAlJSAzCgpgYGAKCmBgYHtyfQpjYXQoYWRkLCBzdWIsIGRpdiwgbXVsdCwgcCwgbSwgbTIpCmBgYAoKIyMgQ29tYmluZWQgY2FsY3VsYXRpb24KYGBge3J9CmMgPSAoMTAgKyAoNS0yKSAqIDIwICsgKDIwLTEwKSkqMTAKYwpgYGAKCgojIFN0cmluZwoKYGBge3J9Cj9wYXN0ZQpgYGAKCgojIENvbmNhdGVuYXRpb24gb3IgTWVyZ2UKYGBge3J9CnZhcjEgPSAiVGhpcyBpcyBhIHZhcmlhYmxlLiIKdmFyMiA9ICJJIGFtIGFub3RoZXIgdmFyaWFibGUuIgoKY29tYmluZWQgPSBwYXN0ZSh2YXIxLCB2YXIyLCB2YXIxLCB2YXIyLCBzZXAgPSAiIC0gIikKY29tYmluZWQKYGBgCgoKYGBge3J9CnZhcjEgPSAiR1RBQyIKdmFyMiA9ICJBVEdDQSIKcGFzdGUodmFyMSwgdmFyMiwgc2VwPSIiKQpgYGAKCiMjIFNlZ21lbnQKYGBge3J9CnZhciA9ICJHVEFDQVRHQ0FHVEFDQVRHQ0FHVEFDQVRHQ0FHVEFDQVRHQ0FHVEFDQVRHQ0FHVEFDQVRHQ0FHVEFDQVRHQ0EiCgp4MyA9IHN1YnN0cih2YXIsIHN0YXJ0ID0gMTIsIHN0b3AgPSAxNikgIyAxMiAxMyAxNCAxNSAxNgp4MSA9IHN1YnN0cih2YXIsIHN0YXJ0ID0gMTAsIHN0b3AgPSAyMCkKeDIgPSBzdWJzdHIodmFyLCBzdGFydCA9IDEyLCBzdG9wID0gMjUpCgp4ID0gYyh4MSwgeDIsIHgzKQpgYGAKCiMjIExlbmd0aApgYGB7cn0KbmNoYXIodmFyKQpuY2hhcih4KQpgYGAKCgojIyBQYXR0ZXJuIEV4aXN0cz8KYGBge3J9CmdlbmVfc2VxID0gIkdUQUNBVEdDQUdUQUNBVEdDQUdUQUNBVEdDQUdUQUNBVEdDQUdUQUNBVEdDQUdUQUNBVEdDQUdUQUNBVEdDQSIKcGF0dGVybjEgPSAiQVRHQ0NDQ0EiCnBhdHRlcm4yID0gIlRHQ0FHIgoKZ3JlcGwocGF0dGVybjEsIGdlbmVfc2VxKQpncmVwbChwYXR0ZXJuMiwgZ2VuZV9zZXEpCmBgYAoKIyMgUGF0dGVybiBNYXRjaGluZwpgYGB7cn0KZ2VuZV9zZXEgPSAiR1RBQ0FUR0NBR1RBQ0FUR0NBR1RBQ0FUR0NBR1RBQ0FUR0NBR1RBQ0FUR0NBR1RBQ0FUR0NBR1RBQ0FUR0NBIgpwYXR0ZXJuMSA9ICJBVEdDQ0NDQSIKcGF0dGVybjIgPSAiVEdDQUciCgptYXRjaGVzID0gZ3JlZ2V4cHIocGF0dGVybjIsIGdlbmVfc2VxKQptYXRjaGVzID0gdW5saXN0KG1hdGNoZXMpCm1hdGNoZXMKCm1hdGNoZXMgPSBncmVnZXhwcihwYXR0ZXJuMSwgZ2VuZV9zZXEpCm1hdGNoZXMgPSB1bmxpc3QobWF0Y2hlcykKbWF0Y2hlcwpgYGAKCgojIyBTcGxpdApgYGB7cn0KZ2VuZV9zZXEgPSAiR1RBQ0FUR0NBR1QsQUNBVEdDQUdUQUNBLFRHQ0FHVEFDQVRHQ0EsR1RBQ0EsVEdDQUdUQUMsQVRHQ0FHVEFDQVQsR0NBIgpnZW5lX3ZlYyA9IHN0cnNwbGl0KGdlbmVfc2VxLCBzcGxpdCA9ICIsIikKZ2VuZV92ZWMKCgpnZW5lX3NlcSA9ICJHVEFDQVRHQ0FHVCBBQ0FUR0NBR1RBQ0EgVEdDQUdUQUNBVEdDQSBHVEFDQSBUR0NBR1RBQyBBVEdDQUdUQUNBVCBHQ0EiCmdlbmVfdmVjID0gc3Ryc3BsaXQoZ2VuZV9zZXEsIHNwbGl0ID0gIiAiKQpnZW5lX3ZlYwpgYGAKCgojIyBSZXZlcnNlCmBgYHtyfQpsaWJyYXJ5KHN0cmluZ2kpCmdlbmVfc2VxID0gIlRoaXMgaXMgYSBjYXQiCgpyZXZfZ2VuZV9zZXEgPSBzdHJpX3JldmVyc2UoZ2VuZV9zZXEpCnJldl9nZW5lX3NlcQpgYGAKCgoKCgoKCgoKCgoKCgoKCgoKCg==