Duration 5 Days 30 CPD hours This course is intended for This course is intended for anyone who is new to software development and wants, or needs, to gain an understanding of the fundamentals of coding and basics of C++ and object-oriented programming concepts. This course is for Non-Developers, or anyone who wants to have a basic understanding of and learn how to code C++ applications and syntax Overview Companies are constantly challenged to keep their applications, development projects, products, services (and programmers!) up to speed with the latest industry tools, skills, technologies and practices to stay ahead in the ever-shifting markets that make up today's fiercely competitive business landscape. The need for application, web and mobile developers and coders is seemingly endless as technologies regularly change and grow to meet the modern needs of demanding industries and clients. C++ and Programming Basics for Non-Programmers is a five-day, basic-level training course geared for IT candidates who have little or no prior experience in computer programming. Throughout this gentle introduction to programming and C++, students will learn to create applications and libraries using C++ using best practices and sound OO development techniques for writing object-oriented programs in C++. Special emphasis is placed on object-oriented concepts and best practices throughout the training. Fundamentals of the Program Development Cycle Computer Architecture The Notion of Algorithms Source Code vs. Machine Code Compile-Time vs. Run-Time Software Program Architecture Standalone Client/Server Distributed Web-Enabled IDE (Interactive Development Environment) Concepts Looping Constructs Counter-Controlled Repetition Sentinel-Controlled Repetition Nested Control Constructs break and continue Statements Structured Programming Best Practices Writing Methods (Functions) Static vs. Dynamic Allocation Declaring Methods Declaring Methods with Multiple Parameters Method-Call Stack Scope of Declarations Argument Promotion and Casting Designing Methods for Reusability Method Overloading Arrays Purpose of Arrays Declaring and Instantiating Arrays Passing Arrays to Methods Multidimensional Arrays Variable-Length Argument Lists Using Command-Line Arguments Using Environment Variables Deeper Into Classes and Objects Controlling Access to Class Members Referencing the Current Object Using this Overloading Constructors Default and No-Argument Constructors Composition of Classes Garbage Collection and Destructors The finalize Method Static Class Members Defining Classes Using Inheritance Application Development Fundamentals Structure of a C++ Program Memory Concepts Fundamental Data Type Declarations Fundamental I/O Concepts Fundamental Operators Arithmetic Operators Logical Operators Precedence and Associativity Building and Deploying a C++ Program Superclasses and Subclasses Advantages of Using Inheritance protected Class Members Constructors in Subclasses Increasing Convenience by Using Polymorphism Purpose of Polymorphic Behavior The Concept of a Signature Abstract Classes and Methods final Methods and Classes Purpose of Interfaces Using and Creating Interfaces Common Interfaces of the C++ API Files and Streams Concept of a Stream Class File Sequential Access Object Serialization to/from Sequential Access Files Fundamental Searching and Sorting Introduction to Searching Algorithms Linear Search Binary Search Introduction to Sorting Algorithms Selection Sort Insertion Sort Merge Sort Fundamental Data Structures Dynamic Memory Allocation Linked Lists Stacks Queues Trees Exception Handling Types of Exceptions Exception Handling Overview Introduction to Classes and Objects Classes, Objects and Methods Object Instances Declaring and Instantiating a C++ Object Declaring Methods set and get Methods Initiating Objects with Constructors Primitive Types vs. Reference Types Flow Control Conditional Constructs Exception Class Hierarchy Extending Exception Classes When to Throw or Assert Exceptions Formatted Output printf Syntax Conversion Characters Specifying Field Width and Precision Using Flags to Alter Appearance Printing Literals and Escape Sequences Formatting Output with Class Formatter Strings, Characters and Regular Expressions Fundamentals of Characters and Strings String Class String Operations StringBuilder Class Character Class StringTokenizer Class Regular Expressions Regular Expression Syntax Pattern Class Matcher Class Fundamental GUI Programming Concepts Overview of Swing Components Displaying Text and Graphics in a Window Event Handling with Nested Classes GUI Event Types and Listener Interfaces Mouse Event Handling Layout Managers Additional course details: Nexus Humans C Plus Plus and Programming Basics for Non-Programmers (TTCP2000) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the C Plus Plus and Programming Basics for Non-Programmers (TTCP2000) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Advanced Java training course description A tour of the more advanced features of Java following on from the Introduction to Java course. JDBC and JavaBeans are covered in separate courses. What will you learn Use Java to implement OOA/D. Use within Java programs - Internationalisation - Object serialisation - Reflection - RMI - Swing - JAR files Write Servlets and Java Server Pages Advanced Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Introduction to Java programming Duration 5 days Advanced Java training course contents What you should already know OO features in Java Static initialisers, object destruction, finalisation, constructor chaining, shadowing, Abstract classes and interfaces, inner classes, nested classes, member classes, local classes, anonymous classes. Internationalisation Locales, Unicode, local customs, localising messages. Object Serialisation Simple and custom serialisation, class versioning. Reflection Obtaining class and member information. RMI Restrictions, RMI architecture, Stubs, skeletons, rmic, the registry server, The RMI API. Swing An overview, examples, comparison vs. AWT, data transfer cut & paste. Servlets Servlet API, Java Web server, The servlet life cycle, chaining servlets, Hybrid servlets. JAR files and signed applet JAR files and signed applet
Duration 5 Days 30 CPD hours This course is intended for This introductory-level Python course is geared for experienced users who want to use Python in web development projects, or system administrators and web site administrators who want to use Python to support their server installations, as well as anyone else who wants to automate or simplify common tasks with the use of Python scripts. Basic familiarity with any programming or scripting language would be helpful, along with a working, user-level knowledge of Unix/Linux, Mac, or Windows. Overview This course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Throughout the hands-on course students, will learn to write essential Python scripts using the most current and efficient skills and techniques. Working in a hands-on learning environment, guided by our expert team, attendees will learn to: Create working Python scripts following best practices Use python data types appropriately Read and write files with both text and binary data Search and replace text with regular expressions Get familiar with the standard library and its work-saving modules Use lesser known but powerful Python data types Create 'real-world', professional Python applications Work with dates, times, and calendars Know when to use collections such as lists, dictionaries, and sets Understand Pythonic features such as comprehensions and iterators Write robust code using exception handling Mastering Python Programming is an introductory and beyond-level practical, hands-on Python training course that leads the student from the basics of writing and running Python scripts to more advanced features such as file operations, regular expressions, working with binary data, and using the extensive functionality of Python modules. Extra emphasis is placed on features unique to Python, such as tuples, array slices, and output formatting. This comprehensive, practical course provides an in-depth exploration of working with the programming language, not an academic overview of syntax and grammar. Students will immediately be able to use Python to complete tasks in the real world. An overview of Python What is python? Python Timeline Advantages/Disadvantages of Python Getting help with pydoc The Python Environment Starting Python Using the interpreter Running a Python script Python scripts on Unix/Windows Editors and IDEs Getting Started Using variables Builtin functions Strings Numbers Converting among types Writing to the screen Command line parameters Flow Control About flow control White space Conditional expressions Relational and Boolean operators While loops Alternate loop exits Array types About array types (AKA sequences) Lists and list methods Tuples Indexing and slicing Iterating through a sequence Nested sequences Sequence functions, keywords, and operators List comprehensions Generator Expressions Working with files File overview Opening a text file Reading a text file Writing to a text file Reading and writing raw (binary) data Converting binary data with struct Dictionaries and Sets About dictionaries Creating dictionaries Iterating through a dictionary About sets Creating sets Working with sets Functions Defining functions Parameters Global and local scope Nested functions Returning values Sorting The sorted() function Alternate keys Lambda functions Sorting collections Using operator.itemgetter() Reverse sorting Errors and Exception Handling Syntax errors Exceptions Using try/catch/else/finally Handling multiple exceptions Ignoring exceptions Modules and Packages The import statement Module search path Creating Modules Using packages Function and Module aliases An Introduction to Python Classes About o-o programming Defining classes Constructors Methods Instance data Properties Class methods and data Regular Expressions RE syntax overview RE Objects Searching and matching Compilation flags Groups and special groups Replacing text Splitting strings Using the Standard Library The sys module Launching external programs Math functions Random numbers Reading CSV data Dates and Times Working with dates and times Translating timestamps Parsing dates from text Formatting dates Calendar data Working with the File System Paths, directories, and filenames Checking for existence Permissions and other file attributes Walking directory trees Creating filters with fileinput Using shutil for file operations Advanced Data Handling Defaultdict and Counter Prettyprinting data structures Compressed archives (zip, gzip, tar, etc.) Persistent data Network Programming Using requests Grabbing web content Sending email Using SSH for remote access Using FTP Writing real-life applications Reading input files a la Unix Parsing command-line options Detecting the current platform Implementing logging Additional course details: Nexus Humans Mastering Python Programming (TTPS4820) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Mastering Python Programming (TTPS4820) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Do you want to be more successful? To have a better quality of life? If so, then discover how NLP can help you to achieve this.
Duration 3 Days 18 CPD hours This course is intended for This course is designed for existing Python programmers who have at least one year of Python experience and who want to expand their programming proficiency in Python 3. Overview In this course, you will expand your Python proficiencies. You will: Select an object-oriented programming approach for Python applications. Create object-oriented Python applications. Create a desktop application. Create a data-driven application. Create and secure web service-connected applications. Program Python for data science. Implement unit testing and exception handling. Package an application for distribution. Python continues to be a popular programming language, perhaps owing to its easy learning curve, small code footprint, and versatility for business, web, and scientific uses. Python is useful for developing custom software tools, applications, web services, and cloud applications. In this course, you'll build upon your basic Python skills, learning more advanced topics such as object-oriented programming patterns, development of graphical user interfaces, data management, creating web service-connected apps, performing data science tasks, unit testing, and creating and installing packages and executable applications. Selecting an Object-Oriented Programming Approach for Python Applications Topic A: Implement Object-Oriented Design Topic B: Leverage the Benefits of Object-Oriented Programming Creating Object-Oriented Python Applications Topic A: Create a Class Topic B: Use Built-in Methods Topic C: Implement the Factory Design Pattern Creating a Desktop Application Topic A: Design a Graphical User Interface (GUI) Topic B: Create Interactive Applications Creating Data-Driven Applications Topic A: Connect to Data Topic B: Store, Update, and Delete Data in a Database Creating and Securing a Web Service-Connected App Topic A: Select a Network Application Protocol Topic B: Create a RESTful Web Service Topic C: Create a Web Service Client Topic D: Secure Connected Applications Programming Python for Data Science Topic A: Clean Data with Python Topic B: Visualize Data with Python Topic C: Perform Linear Regression with Machine Learning Implementing Unit Testing and Exception Handling Topic A: Handle Exceptions Topic B: Write a Unit Test Topic C: Execute a Unit Test Packaging an Application for Distribution Topic A: Create and Install a Package Topic B: Generate Alternative Distribution Files Additional course details: Nexus Humans Advanced Programming Techniques with Python training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Advanced Programming Techniques with Python course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 5 Days 30 CPD hours This course is intended for This course is designed for students who want to learn the R programming language, particularly students who want to leverage R for data analysis and data science tasks in their organization. The course is also designed for students with an interest in applying statistics to real-world problems. A typical student in this course should have several years of experience with computing technology, along with a proficiency in at least one other programming language. Overview In this course, you will use R to perform common data science tasks.You will: Set up an R development environment and execute simple code. Perform operations on atomic data types in R, including characters, numbers, and logicals. Perform operations on data structures in R, including vectors, lists, and data frames. Write conditional statements and loops. Structure code for reuse with functions and packages. Manage data by loading and saving datasets, manipulating data frames, and more. Analyze data through exploratory analysis, statistical analysis, and more. Create and format data visualizations using base R and ggplot2. Create simple statistical models from data. In our data-driven world, organizations need the right tools to extract valuable insights from that data. The R programming language is one of the tools at the forefront of data science. Its robust set of packages and statistical functions makes it a powerful choice for analyzing data, manipulating data, performing statistical tests on data, and creating predictive models from data. Likewise, R is notable for its strong data visualization tools, enabling you to create high-quality graphs and plots that are incredibly customizable. This course will teach you the fundamentals of programming in R to get you started. It will also teach you how to use R to perform common data science tasks and achieve data-driven results for the business. Lesson 1: Setting Up R and Executing Simple Code Topic A: Set Up the R Development Environment Topic B: Write R Statements Lesson 2: Processing Atomic Data Types Topic A: Process Characters Topic B: Process Numbers Topic C: Process Logicals Lesson 3: Processing Data Structures Topic A: Process Vectors Topic B: Process Factors Topic C: Process Data Frames Topic D: Subset Data Structures Lesson 4: Writing Conditional Statements and Loops Topic A: Write Conditional Statements Topic B: Write Loops Lesson 5: Structuring Code for Reuse Topic A: Define and Call Functions Topic B: Apply Loop Functions Topic C: Manage R Packages Lesson 6: Managing Data in R Topic A: Load Data Topic B: Save Data Topic C: Manipulate Data Frames Using Base R Topic D: Manipulate Data Frames Using dplyr Topic E: Handle Dates and Times Lesson 7: Analyzing Data in R Topic A: Examine Data Topic B: Explore the Underlying Distribution of Data Topic C: Identify Missing Values Lesson 8: Visualizing Data in R Topic A: Plot Data Using Base R Functions Topic B: Plot Data Using ggplot2 Topic C: Format Plots in ggplot2 Topic D: Create Combination Plots Lesson 9: Modeling Data in R Topic A: Create Statistical Models in R Topic B: Create Machine Learning Models in R
COBOL training course description A hands on training course providing an introduction to COBOL. What will you learn Write COBOL programs Debug COBOL programs Examine existing code and determine its function. COBOL training course details Who will benefit: Programmers working with COBOL. Prerequisites: None although experience in another high level language would be useful. A 10 day version of this course would be more applicable for those new to programming. Duration 5 days COBOL training course contents Introduction to COBOL Compilation, linkage editor. Compile errors, compiler options. Divisions, syntax and format, COBOL character set, program structure. COBOL statement structure COBOL words, format of statements. Divisions Identification entries, Environment entries, Data division: FD, record descriptions, hierarchy and level numbers, description-string entry. File and Working-Storage Sections Literals, figurative constants, redefines clause, data representation, Usage clause, synchronization, sign clause. Procedure Division File status codes; Open, Read, Write, Close, Stop, Goback; Accept, display; Move, Justified, data name qualification, reference modification. Perform statement Out-of-line, With test ... Until, ... Times, in-line statement; Go to statement. Program design Design techniques, design considerations, procedure names, program structure. Printing Printed output, Write, advancing option, editing characters; Initialize. Condition testing Conditional statements: IF, class, sign and relation conditions, condition-name conditionals, Set, compound conditions, logical operators. Evaluate, Continue. Arithmetic Rounded option, On Size Error option, Add, Subtract, Multiply, Divide, Compute. Non-sequential files File access modes, Select. Indexed and relative files. Open, Close, creating / reading sequential access files, Write, Read, Invalid key clause, reading, writing / updating Random access files, Rewrite, Delete, Start. Declarative routines Clauses. Subroutines Call, Using clause - calling program/called program, Linkage Section, returning control. Table handling Subscripted tables: One/two/three dimensional tables, Perform, variable length tables. Indexed tables: Set, using an index; Search. Copy code: Copy, Suppress, Replacing. Data Manipulation Inspect, String, Unstring. COBOL/370 LE/370 and Intrinsic Functions.
Duration 4 Days 24 CPD hours This course is intended for This is an introductory-level Java programming course, designed for experienced developers who wish to get up and running with Java, or who need to reinforce sound Java coding practices, immediately. Overview Working in a hands-on learning environment, guided by our expert team, attendees will learn to: Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses Understand the basics of the Java language and how it relates to OO programming and the Object Model Learn to use Java exception handling features Work with the Modular system (Project Jigsaw) Understand and use classes, inheritance and polymorphism Understand and use collections, generics, autoboxing, and enumerations Process large amount of data using Lambda expressions and the Stream API Abstract, static and private methods in interfaces Take advantage of the Java tooling that is available with the programming environment being used in the class Specific Java 11 features covered: Using the Local Variable Type in Lambda expressions; Updates made to the String AP Time Permitting: Quick look ahead - Java 12, Java 13, Java 14 and Beyond If you're an experienced OO developer (coming from a C# or C++ background, etc.) who needs to transition to programming in Java, this fast-paced, hands-on course will get you there quickly. Fast Track to Java Programming for OO Experienced Developers is a four-day, lab-intensive class where you'll quickly be immersed in working with the latest Java 11 programming techniques, using best practices for writing solid, robust (and well-written!) modern object-oriented applications. In addition to learning excellent, current coding skills in Java, you'll explore the new improved features for better performance and new capabilities for addressing rapid application development that Java 11 brings to the table. This course includes several key aspects that were introduced in Java 9, Java 10, and Java 11 including the Java Modular System, Local Variable Type Inference, and several API updates. This course also includes a Quick Look at what?s next in Java ? Java 12, Java 13, Java 14 and beyond. The Java Platform Java Platforms Lifecycle of a Java Program Responsibilities of JVM Documentation and Code Reuse Using the JDK Setting Up Environment Locating Class Files Compiling Package Classes Source and Class Files Java Applications The Eclipse Paradigm Workbench and Workspace Views Editors Perspectives Projects Writing a Simple Class Classes in Java Class Modifiers and Types Class Instance Variables Primitives vs. Object References Creating Objects Adding Methods to the Class Passing Parameters into Methods Returning a Value from a Method Overloaded Methods Constructors Optimizing Constructor Usage Language Statements Operators Comparison and Logical Operators Looping Continue and Break Statements The switch Statement The for-each() Loop Using Strings Create an instance of the String class Test if two strings are equal Get the length of a string Parse a string for its token components Perform a case-insensitive equality test Build up a string using StringBuffer Contrast String, StringBuffer, and StringBuilder Specializing in a Subclass Extending a Class Casting The Object Class Default Constructor Implicit Constructor Chaining Fields and Variables Instance vs. Local Variables: Usage Differences Data Types Default Values Block Scoping Rules Final and Static Fields Static Methods Using Arrays Arrays Accessing the Array Multidimensional Arrays Copying Arrays Variable Arguments Local-Variable Type Inference Type inference Infering Types of Local Variables The var Reserved Type name Benefits of Using var Backward Compatibility Java Packages and Visibility Class Location of Packages The Package Keyword Importing Classes Executing Programs Visibility in the Modular System Java Naming Conventions Inheritance and Polymorphism Polymorphism: The Subclasses Upcasting vs. Downcasting Calling Superclass Methods from Subclass The final Keyword Interfaces and Abstract Classes Separating Capability from Implementation Abstract Classes Implementing an Interface Abstract Classes vs. Interfaces Introduction to Exception Handling Exception Architecture Throwing Exceptions Checked vs. Unchecked Exceptions Exceptions Handling Multiple Exceptions Automatic Closure of Resources Creating Your Own Exceptions Utility Classes Wrapper Classes Autoboxing/Unboxing Enumeration Syntax Using Static imports Introduction to Generics Generics and Subtyping Bounded Wildcards Generic Methods Legacy Calls to Generics When Generics Should Be Used Lambda Expressions and Functional Interface Lambda Expression Syntax Functional Interfaces Type Inference in Java 8 Method references Collections Characterizing Collections Collection Interface Hierarchy The Set, List and Queue Interfaces Map Interfaces Using Collections Collection Sorting Comparators Using the Right Collection Lambda expressions in Collections Streams Processing Collections of data The Stream interface Reduction and Parallelism Filtering collection data Sorting Collection data Map collection data Find elements in Stream Numeric Streams Create infinite Streams Sources for using Streams Collectors Creating Collections from a Stream Group elements in the Stream Multi-level grouping of elements Partitioning Streams Introduction to the Module System Introduce Project Jigsaw Classpath and Encapsulation The JDK internal APIs Java 9 Platform modules Defining application modules Define module dependencies Implicit dependencies Implied Readability Exporting packages Java Date/Time The Date and Calendar classes Introduce the new Date/Time API LocalDate, LocalDateTime, etc. Formatting Dates Working with time zones Manipulate date/time values Java 12 and beyond Provide an overview of changes since Java 11 Introduce Preview Features Records (Java 14) Switch Expressions (Java 12, Java 13, Java 14) Text Blocks (Java 13, Java 14) Helpful NullPointerExceptions (Java 14) Pattern Matching for instanceof (Java 14) Additional course details: Nexus Humans Fast Track to Core Java Programming for Object Oriented Developers (TT2104-J11) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Fast Track to Core Java Programming for Object Oriented Developers (TT2104-J11) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Perl training course description A hands on introduction to programming in Perl. What will you learn Write Perl programs. Use Perl modules. Debug Perl programs. Examine existing code and determine its function. Perl training course details Who will benefit: Anyone wishing to learn Perl. Prerequisites: None although experience in another high level language would be useful. Duration 5 days Perl training course contents Introduction to Perl What is Perl? When to use Perl, downloading Perl, installing Perl, documentation, perldoc, running Perl, the Perl environment. Perl under UNIX, Perl under Windows. "Hello world". Variables Scalars, data types, $_, strings and numbers, assignment, constants, strict, scope, STDIN. Operators Number operators, string operators, precedence and associativity, converting numbers and strings, shortcut operators. Flow control Blocks, if, else, elseif, unless, foreach, while, for do, until. Regular expressions What are regular expressions? Pattern matching, Perl as a filter, file editing. Strings Comparing strings, concatenating, substrings, chomp, chop, formatting, string manipulation. Subroutines Comparing strings, concatenating, substrings, chomp, chop, formatting, string manipulation. Arrays and hashes Working with arrays, element access, push(), pop(), shift(), unshift(), <STDIN> as an array, associative arrays, hashes of arrays, hash references, arrays of hashes, hashes of hashes. Files Simple file handling, open, close, <FILEHANDLE>, <>, file tests, directory access, directory handles, database access, packing and packing binary data. I/O STDIN, STDOUT and STDERR, Command line arguments,@ARGV. Perl debugging The built in debugger, running the debugger, debugger commands, graphical debuggers. Script syntax errors, single stepping, breakpoints, watches. Packages and modules CPAN, Finding modules, installing modules, using modules, scope. Report formatting Formats, defining a format, invoking a format, field holders. Process management System interaction, system(), exec(), signals. Security issues.
Duration 2 Days 12 CPD hours This course is intended for Business Analysts, Technical Managers, and Programmers Overview This intensive training course helps students learn the practical aspects of the R programming language. The course is supplemented by many hands-on labs which allow attendees to immediately apply their theoretical knowledge in practice. Over the past few years, R has been steadily gaining popularity with business analysts, statisticians and data scientists as a tool of choice for conducting statistical analysis of data as well as supervised and unsupervised machine learning. What is R ? What is R? ? Positioning of R in the Data Science Space ? The Legal Aspects ? Microsoft R Open ? R Integrated Development Environments ? Running R ? Running RStudio ? Getting Help ? General Notes on R Commands and Statements ? Assignment Operators ? R Core Data Structures ? Assignment Example ? R Objects and Workspace ? Printing Objects ? Arithmetic Operators ? Logical Operators ? System Date and Time ? Operations ? User-defined Functions ? Control Statements ? Conditional Execution ? Repetitive Execution ? Repetitive execution ? Built-in Functions ? Summary Introduction to Functional Programming with R ? What is Functional Programming (FP)? ? Terminology: Higher-Order Functions ? A Short List of Languages that Support FP ? Functional Programming in R ? Vector and Matrix Arithmetic ? Vector Arithmetic Example ? More Examples of FP in R ? Summary Managing Your Environment ? Getting and Setting the Working Directory ? Getting the List of Files in a Directory ? The R Home Directory ? Executing External R commands ? Loading External Scripts in RStudio ? Listing Objects in Workspace ? Removing Objects in Workspace ? Saving Your Workspace in R ? Saving Your Workspace in RStudio ? Saving Your Workspace in R GUI ? Loading Your Workspace ? Diverting Output to a File ? Batch (Unattended) Processing ? Controlling Global Options ? Summary R Type System and Structures ? The R Data Types ? System Date and Time ? Formatting Date and Time ? Using the mode() Function ? R Data Structures ? What is the Type of My Data Structure? ? Creating Vectors ? Logical Vectors ? Character Vectors ? Factorization ? Multi-Mode Vectors ? The Length of the Vector ? Getting Vector Elements ? Lists ? A List with Element Names ? Extracting List Elements ? Adding to a List ? Matrix Data Structure ? Creating Matrices ? Creating Matrices with cbind() and rbind() ? Working with Data Frames ? Matrices vs Data Frames ? A Data Frame Sample ? Creating a Data Frame ? Accessing Data Cells ? Getting Info About a Data Frame ? Selecting Columns in Data Frames ? Selecting Rows in Data Frames ? Getting a Subset of a Data Frame ? Sorting (ordering) Data in Data Frames by Attribute(s) ? Editing Data Frames ? The str() Function ? Type Conversion (Coercion) ? The summary() Function ? Checking an Object's Type ? Summary Extending R ? The Base R Packages ? Loading Packages ? What is the Difference between Package and Library? ? Extending R ? The CRAN Web Site ? Extending R in R GUI ? Extending R in RStudio ? Installing and Removing Packages from Command-Line ? Summary Read-Write and Import-Export Operations in R ? Reading Data from a File into a Vector ? Example of Reading Data from a File into A Vector ? Writing Data to a File ? Example of Writing Data to a File ? Reading Data into A Data Frame ? Writing CSV Files ? Importing Data into R ? Exporting Data from R ? Summary Statistical Computing Features in R ? Statistical Computing Features ? Descriptive Statistics ? Basic Statistical Functions ? Examples of Using Basic Statistical Functions ? Non-uniformity of a Probability Distribution ? Writing Your Own skew and kurtosis Functions ? Generating Normally Distributed Random Numbers ? Generating Uniformly Distributed Random Numbers ? Using the summary() Function ? Math Functions Used in Data Analysis ? Examples of Using Math Functions ? Correlations ? Correlation Example ? Testing Correlation Coefficient for Significance ? The cor.test() Function ? The cor.test() Example ? Regression Analysis ? Types of Regression ? Simple Linear Regression Model ? Least-Squares Method (LSM) ? LSM Assumptions ? Fitting Linear Regression Models in R ? Example of Using lm() ? Confidence Intervals for Model Parameters ? Example of Using lm() with a Data Frame ? Regression Models in Excel ? Multiple Regression Analysis ? Summary Data Manipulation and Transformation in R ? Applying Functions to Matrices and Data Frames ? The apply() Function ? Using apply() ? Using apply() with a User-Defined Function ? apply() Variants ? Using tapply() ? Adding a Column to a Data Frame ? Dropping A Column in a Data Frame ? The attach() and detach() Functions ? Sampling ? Using sample() for Generating Labels ? Set Operations ? Example of Using Set Operations ? The dplyr Package ? Object Masking (Shadowing) Considerations ? Getting More Information on dplyr in RStudio ? The search() or searchpaths() Functions ? Handling Large Data Sets in R with the data.table Package ? The fread() and fwrite() functions from the data.table Package ? Using the Data Table Structure ? Summary Data Visualization in R ? Data Visualization ? Data Visualization in R ? The ggplot2 Data Visualization Package ? Creating Bar Plots in R ? Creating Horizontal Bar Plots ? Using barplot() with Matrices ? Using barplot() with Matrices Example ? Customizing Plots ? Histograms in R ? Building Histograms with hist() ? Example of using hist() ? Pie Charts in R ? Examples of using pie() ? Generic X-Y Plotting ? Examples of the plot() function ? Dot Plots in R ? Saving Your Work ? Supported Export Options ? Plots in RStudio ? Saving a Plot as an Image ? Summary Using R Efficiently ? Object Memory Allocation Considerations ? Garbage Collection ? Finding Out About Loaded Packages ? Using the conflicts() Function ? Getting Information About the Object Source Package with the pryr Package ? Using the where() Function from the pryr Package ? Timing Your Code ? Timing Your Code with system.time() ? Timing Your Code with System.time() ? Sleeping a Program ? Handling Large Data Sets in R with the data.table Package ? Passing System-Level Parameters to R ? Summary Lab Exercises Lab 1 - Getting Started with R Lab 2 - Learning the R Type System and Structures Lab 3 - Read and Write Operations in R Lab 4 - Data Import and Export in R Lab 5 - k-Nearest Neighbors Algorithm Lab 6 - Creating Your Own Statistical Functions Lab 7 - Simple Linear Regression Lab 8 - Monte-Carlo Simulation (Method) Lab 9 - Data Processing with R Lab 10 - Using R Graphics Package Lab 11 - Using R Efficiently