Skip an error in a loop && debug in R

When writing R code, it is important to know how to debug.

    1. In for loop, once bug occurred, to to skip the error and continue loop:

count <- 0
repeat {
if (count == 100) break
count <- count + 1
x <- matrix(sample(0:2, 4, replace = T), 2, 2)
x.inv <- try(solve(x), silent=TRUE)
if ('try-error' %in% class(x.inv)) next
else inverses[[count]] <- x.inv
}

2. To test an R function, simply use debug()

when run debug() command

  • n(next): to run the next command line,and pause after next line, which gives us a way to run code line by line.
  • c(continue): to run several lines. If present in a loop, this command will run the entire loop; while in stays in a function but loop, then R will run over the function.
  • where: output present location, show the array of functions till present code line.
  • Q: exit browser.

3. Set break point setBreakpoint()

require(utils)

setBreakpoint(filename,linenumber)

  This will set break point at line number linenumber in filename. Notice this should set in a function.  This command can be used while debug() which runs the code till break point.

cancel break point :  untrace(fun)

 

Mac OSX 添加环境变量的三种方法

Mac添加环境变量的三种方法,之前有一篇关于mac $path加载环境变量的3种配置文件

 

(一)

sudo nano /etc/paths

来编辑 paths,将环境变量添加到 paths 中。

nano 是一个编辑器,另外还有几个,如:Pico,Emacs。

(二)

1.创建一个文件:

sudo touch /etc/paths.d/mysql

2.sudo nano /etc/paths.d/mysql

 

3.编辑该文件,键入路径并保存(关闭该 Terminal 窗口并重新打开一个,就能使用 mysql 命令了)

/usr/local/mysql/bin

据说,这样可以自己生成新的文件,不用把变量全都放到 paths 一个文件里,方便管理。

 

(三)

1.nano 打开 ~/.bash_profile 文件

2.新增环境变量

export PATH=”$HOME/.rbenv/bin:$PATH”

3.让以上所做的配置生效

source ~/.bash_profile

4.查看是否生效

echo $PATH

需要注意的一点(冒号乃环境变量的分隔符):

$HOME/.rbenv/bin:$PATH 中的 $PATH 特指 /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

如果要添加多个环境变量的话,需按照如下的方式来书写:

export PATH=”$PATH:/Applications/MacVim-snapshot-68″

export PATH=”$HOME/.rbenv/bin:$PATH”

eval “$(rbenv init -)”

export PATH=”$HOME/.rbenv/bin:$PATH”

eval “$(rbenv init -)”

环境变量加载是有顺序的,

依次从/etc/paths文件,

/etc/paths.d目录,

PATH环境变量中去搜集路径信息。

本文由 一介布衣 创作,采用 知识共享署名 3.0 中国大陆许可协议。
可自由转载、引用,但需署名作者且注明文章出处。

本站部署于「UCloud云计算」。
右侧微信扫描 「打赏」,感谢支持!

引用自:http://yijiebuyi.com/blog/41ee3bab0c5bf1d43c7a8ccc7f0fe44e.html

Load Packages Automatically in RStudio

Recently I was doing R package development, I used 3 packages.  But the problem is that I have to run library() command every time I load the project, which annoyed me a lot. Then I found out that I can set the default packages loaded when R start up.

1. First Let’s check what default packages are:

> (.packages())
(Note that the parenthesis can not be omitted.)

2. Files in three folders are important in this process:

i>. R_HOME, the directory in which R is installed. The etc sub-directory can contain start-up files read early on in the start-up process. Find out where your R_HOME is with the R.home() command.

ii>. HOME, the user’s home directory. Typically this is /home/username on Unix machines or C:\Users\username on Windows (since Windows 7). Ask R where your home directory with, path.expand("~") (note the use of the Unix-like tilde to represent the home directory).

iii>. R’s current working directory. This is reported by getwd().

3. Then we need to locate the .Rprofile file, which is the R project default start up file.

file.path(Sys.getenv("HOME"), ".Rprofile") can help us locate the file directory.

For more information please refer to r-startup.

4. Rewrite this startup file.

> file.edit("~/.Rprofile")
# This opens up a script, within which you can enter in your library commands
library(ggplot2)
library(Rcpp)
library(plyr)
library(reshape2)

Finally you can run library() again to check whether these packages are loaded.

Thank you for your reading, This site is actively updated. Keep an eye on it if interested.

macOS command line

a

  afconvert Audio File Convert

  afinfo    Audio File Info

  afplay    Audio File Play

  airport   Manage Apple AirPort

  alias     Create an alias •

  alloc     List used and free memory

  apropos   Search the whatis database for strings

  asr       Apple Software Restore

  atsutil   Font registration system utility

  awk       Find and Replace text within file(s)

b

  basename  Convert a full pathname to just a filename

  bash      Bourne-Again SHell

  bg        Send to background •

  bind      Set or display readline key and function bindings •

  bless     Set volume bootability and startup disk options

  break     Exit from a For, While, Until or Select loop •

  builtin   Execute a shell builtin .

  bzip2     Compress or decompress files

c

  caffeinate Prevent the system from sleeping

  cal       Display a calendar

  calendar  Reminder Service

  caller    Return the context of a subroutine call •

  cancel    Cancel print jobs

  case      Conditionally perform a command •

  cat       Concatenate and print (display) the content of files

  cd        Change Directory •

  chflags   Change a file or folder's flags

  chgrp     Change group ownership

  chmod     Change access permissions

  chown     Change file owner and group

  chroot    Run a command with a different root directory

  cksum     Print CRC checksum and byte counts

  clear     Clear terminal screen

  cmp       Compare two files

  comm      Compare two sorted files line by line

  command   Run a command (not a function) •

  complete  Edit a command completion [word/pattern/list] •

  continue  Resume the next iteration of a loop •

  cp        Copy one or more files to another location

  cron      Daemon to execute scheduled commands

  crontab   Schedule a command to run at a later date/time

  csplit    Split a file into context-determined pieces

  csrutil   Configure System Integrity Protection (SIP)

  curl      Transfer data  from or to a server

  cut       Divide a file into several parts

d

  date      Display or change the date & time

  dc        Desk Calculator

  dd        Convert and copy a file, clone disks

  declare   Declare variable & set attributes •

  defaults  Set preferences, show hidden files

  df        Display free disk space

  diff      Display the differences between two files

  diff3     Show differences among three files

  dig       DNS lookup

  dirname   Convert a full pathname to just a path

  dirs      Display list of remembered directories •

  diskutil  Disk utilities - Format, Verify, Repair

  disown    Unbind a job from the current login session •

  ditto     Copy files and folders

  dot_clean Remove dot-underscore files

  drutil    Interact with CD/DVD burners

  dscacheutil  Query or flush the Directory Service/DNS cache

  dseditgroup  Edit, create, manipulate, or delete groups

  dsenableroot Enable root access

  dsmemberutil View user and groups rights

  dscl      Directory Service command line utility

  du        Estimate file space usage

e

  echo      Display text on screen •

  ed        A line-oriented text editor (edlin)

  enable    Enable and disable builtin shell commands •

  env       List or Set environment variables

  eval      Evaluate several commands/arguments •

  exec      Execute a command •

  exit      Exit the shell •

  execsnoop Snoop new process execution

  expand    Convert tabs to spaces

  expect    Programmed dialogue with interactive programs

            Also see AppleScript

  export    Set an environment variable •

  expr      Evaluate expressions

f

  false     Do nothing, unsuccessfully

  fc        Fix command (history)

  fdisk     Partition table manipulator for Darwin UFS/HFS/DOS

  fdesetup  FileVault configuration, list FileVault users

  fg        Send job to foreground •

  file      Determine file type

  find      Search for files that meet a desired criteria

  fmt       Reformat paragraph text

  fold      Wrap text to fit a specified width

  for       Loop command •

  fsck      Filesystem consistency check and repair

  fsaclctl  Filesystem enable/disable ACL support

  fs_usage  Filesystem usage (process/pathname)

  ftp       Internet file transfer program

  function  Define Function Macros

  fuser     List processes that have one or more files open

g

  GetFileInfo Get attributes of HFS+ files

  getopt    Parse positional parameters

  getopts   Parse positional parameters •

  goto      Jump to label and continue execution

  grep      Search file(s) for lines that match a given pattern

  groups    Print group names a user is in

  gzip      Compress or decompress files

h

  halt      Stop and restart the operating system

  hash      Refresh the cached/remembered location of commands •

  head      Display the first lines of a file

  hdiutil   Manipulate iso disk images

  history   Command History •

  hostname  Print or set system name

i

  iconv     Convert the character set of a file

  id        Print user and group names/id's

  if        Conditionally perform a command •

  ifconfig  Configure network interface parameters

  iostat    Report CPU and i/o statistics

  ipconfig  View and control IP configuration state

  info      Help info

  install   Copy files and set attributes

  iosnoop   Snoop I/O events as they occur

j

  jobs      List active jobs •

  join      Join lines on a common field

k

  kextfind  List kernel extensions

  kextstat  Display status of loaded kernel extensions (kexts)

  kextunload Terminate driver instances and unload kernel extensions.

  kickstart Configure Apple Remote Desktop

  kill      Kill a process by specifying its PID

  killall   Kill processes by name

l

  l         List files in long format (ls -l)

  last      Indicate last logins of users and ttys

  launchctl Load or unload daemons/agents

  ll        List files in long format, showing invisible files (ls -la)

  less      Display output one screen at a time

  let       Evaluate expression •

  lipo      Convert a universal binary

  ln        Make links between files (hard links, symbolic links)

  local     Set a local (function) variable •

  locate    Find files

  logname   Print current login name

  login     log into the computer

  logout    Exit a login shell (bye) •

  look      Display lines beginning with a given string

  lp        Print files

  lpr       Print files

  lprm      Remove jobs from the print queue

  lpstat    Printer status information

  ls        List information about file(s)

  lsregister Reset the Launch Services database

  lsbom     List a bill of materials file

  lsof      List open files

m

  man       Help manual

  mdfind    Spotlight search

  mdutil    Manage Spotlight metadata store

  mkdir     Create new folder(s)

  mkfifo    Make FIFOs (named pipes)

  more      Display output one screen at a time

  mount     Mount a file system

  mv        Move or rename files or directories

n

  nano      Simple text editor

  nc/netcat Read and write data across networks

  net       Manage network resources

  netstat   Show network status

  networksetup Network and System Preferences

  nice      Set the priority of a command

  nohup     Run a command immune to hangups

  ntfs.util NTFS file system utility

o

  onintr    Control the action of a shell interrupt

  open      Open a file/folder/URL/Application

  opensnoop Snoop file opens as they occur

  osacompile Compile Applescript

  osascript Execute AppleScript

p

  passwd    Modify a user password

  paste     Merge lines of files

  pbcopy    Copy data to the clipboard

  pbpaste   Paste data from the Clipboard

  pgrep     List processes by a full or partial name

  ping      Test a network connection

  pkill     Kill processes by a full or partial name

  pkgbuild  Build a macOS Installer component package

  pkgutil   Query and manipulate installed packages

  plutil    Property list utility

  pmset     Power Management settings

  popd      Restore the previous value of the current directory •

  pr        Convert text files for printing

  printenv  List environment variables

  printf    Format and print data •

  ps        Process status

  pushd     Save and then change the current directory

  pwd       Print Working Directory •

q

  quota     Display disk usage and limits

r

  rcp       Copy files between machines

  read      Read one line from standard input •

  readonly  Mark a variable or function as read-only •

  reboot    Stop and restart the system

  ReportCrash Enable/Disable crash reporting

  return    Exit a function •

  rev       Reverse lines of a file

  rm        Remove files

  rmdir     Remove folder(s)

  rpm       Remote Package Manager

  rsync     Remote file copy - Sync file tree

s

  say       Convert text to audible speech

  screen    Multiplex terminal, run remote shells via ssh

  screencapture Capture screen image to file or disk

  scselect  Switch between network locations

  scutil    Manage system configuration parameters

  sdiff     Merge two files interactively

  security  Administer Keychains, keys, certificates and the Security framework

  sed       Stream Editor

  select    Generate a list of items •

  serverinfo Server information

  set       Set a shell variable = value •

  setfile   Set attributes of HFS+ files

  sharing   Create share points for afp, ftp and smb services

  shasum    Print or Check SHA Checksums

  shift     Shift positional parameters •

  shopt     Set shell options •

  shutdown  Shutdown or restart macOS

  sips      Scriptable image processing system

  sleep     Delay for a specified time

  softwareupdate System software update tool

  sort      Sort text files

  source    Execute commands from a file •

  spctl     Security assessment policy/Gatekeeper

  split     Split a file into fixed-size pieces

  srm       Securely remove files or directories

  stat      Display the status of a file

  stop      Stop a job or process

  su        Substitute user identity

  sudo      Execute a command as another user

  sum       Print a checksum for a file

  suspend   Suspend execution of this shell •

  sw_vers   Print macOS operating system version

  system_profiler  Report system configuration

  systemsetup Computer and display system settings

t

  tail      Output the last part of files

  tar       Tape ARchiver

  tccutil   Manage the privacy database

  tcpdump   Dump traffic on a network

  tee       Redirect output to multiple files

  test      Condition evaluation •

  textutil  Manipulate text files in various formats (Doc,html,rtf)

  time      Measure Program Resource Use

  times     Print shell & shell process times •

  tmutil    Time Machine utility

  top       Display process information

  touch     Change file timestamps

  tput      Set terminal-dependent capabilities, color, position

  tr        Translate, squeeze, and/or delete characters

  trap      Execute a command when the shell receives a signal •

  traceroute Trace Route to Host

  true      Do nothing, successfully

  tty       Print filename of terminal on stdin

  type      Describe a command •

u

  ufs.util  Mount/unmount UFS file system

  ulimit    limit the use of system-wide resources •

  umask     Users file creation mask

  umount    Unmount a device

  unalias   Remove an alias •

  uname     Print system information

  unexpand  Convert spaces to tabs

  uniq      Uniquify files

  units     Convert units from one scale to another

  unset     Remove variable or function names •

  until     Loop command •

  uptime    Show how long system has been running

  users     Print login names of users currently logged in

  uuencode  Encode a binary file

  uudecode  Decode a file created by uuencode

  uuidgen   Generate a Unique ID (UUID/GUID)

  uucp      Unix to Unix copy

v

  vi        Text Editor

w

  wait      Wait for a process to complete •

  wall      Write a message to users

  wc        Print byte, word, and line counts

  whatis    Search the whatis database for complete words

  whereis   Locate a program

  which     Locate a program file in the user's path

  while     Loop command •

  who       Print all usernames currently logged on

  whoami    Print the current user id and name (`id -un')

  write     Send a message to another user

x

  xargs     Execute utility - passing arguments

  xattr     Display and manipulate extended attributes

  xcode-select --install  Install the command line developer tools

 youtube-dl Download video

  yes       Print a string until interrupted

  zip       Package and compress (archive) files.

  !!        Run the last command again

Happy New Year!

中文:新年快乐

英文:Happy New Year

法语:Bonne année

德语:Glückliches Neujahr

意大利语:Felice Anno Nuovo or Buon anno

西班牙语:Próspero Año Nuevo

韩语:새해(에) 복 많이 받으십시오

克罗地亚语:Sretan Božić Nova godina

捷克语:Veselé Vánoce a šťastný nový rok

丹麦语:Glædelig Jul og Godt Nytår

荷兰语:Gelukkig Nieuwjaar

爱沙尼亚语:Rahulikke jáule ja edukat uut aastat

日语:新年明けましておめでとうございます

马其顿语:Среќна Нова Година и Божиќ!

波兰语:Radosnych Świąt Bożego Narodzenia oraz sukcesów w Nowym Roku

俄语:С Новым Годом

土耳其语:Tanti Auguri

越南语:Chúc mừng năm mới Hạhn phúc – An khang – Thịnh vượng

葡萄牙语:Festival Feliz Da Mola

阿拉伯语:كل عام وأنتم بخير.

阿富汗语:Saale Nao Mubbarak

南非荷兰语:Gelukkige nuwe jaar

阿尔巴尼亚语:Gezuar Vitin e Ri

亚美尼亚语:Snorhavor Nor Tari

阿拉伯语:Antum salimoun

亚述语:Sheta Brikhta

阿塞拜疆语:Yeni Iliniz Mubarek!

孟加拉语:Shuvo Nabo Barsho

保加利亚语:×åñòèòà Íîâà Ãîäèíà(pronounced “Chestita Nova Godina”)

柬埔寨语:Soursdey Chhnam Tmei

加泰罗尼亚语:FELIÇ ANY NOU

克罗埃西亚语:Sretna Nova godina!

威尔斯语:Blwyddyn Newydd Dda

爱斯基摩语:Kiortame pivdluaritlo

世界语:Felican Novan Jaron

埃塞俄比亚语:MELKAM ADDIS AMET YIHUNELIWO!

芬兰语:Onnellista Uutta Vuotta

盖尔语:Bliadhna mhath ur

希腊语:Kenourios Chronos

印度古吉拉特语:Nutan Varshbhinandan

夏威夷语:Hauoli Makahiki Hou

希伯来语:L’Shannah Tovah

北印度语:Naye Varsha Ki Shubhkamanyen

匈牙利语:Boldog Ooy Ayvet

印尼语:Selamat Tahun Baru

伊朗语:Saleh now mobarak

伊拉克语:Sanah Jadidah

爱尔兰语:Bliain nua fe mhaise dhuit

卡拜尔语:Asegwas Amegaz

坎那达语:Hosa Varushadha Shubhashayagalu

高棉语:Sua Sdei tfnam tmei

库德语:NEWROZ PIROZBE

立陶宛语:Laimingu Naujuju Metu

老挝国语:Sabai dee pee mai

马其顿语:Srekjna Nova Godina

马来语:Selamat Tahun Baru

马拉提语:Nveen Varshachy Shubhechcha

马来亚拉姆语:Puthuvatsara Aashamsakal

马尔他语:Is-Sena t- Tajba

尼泊尔语:Nawa Barsha ko Shuvakamana

挪威语:Godt Nyttår

帕施图语:Nawai Kall Mo Mubarak Shah

波斯语:Saleh now ra tabrik migouyam

菲律宾语:Manigong Bagong Taon

波兰语:Szczesliwego Nowego Roku

萨摩亚语:Manuia le Tausaga Fou