Introduction
Linux, the operating system favored by data science professionals, offers flexibility, power, and open-source tools. As a data science beginner, mastering the Linux command line is a key step towards empowering yourself in data manipulation, analysis, and modeling. This article will provide you with 20 basic Linux commands essential for your journey in data science.
Why You Must Know Linux Commands for Data Science?
As a data science professional, having a strong command of Linux commands is essential for several reasons:
- Data Processing and Analysis: As already noted, data science is characterized by working with huge and cumbersome data sets that are processed for a long time on personal computers or conventional operating systems. Linux has powerful command-line tools and utilities that can efficiently handle and manipulate large amounts of data. You can easily perform complex data filtering and transformation using such common tools as
grep
,sort
,awk
,sed
. - Reproducibility and Automation: Reproducibility, as a feature of data science, is another aspect of work. A user can combine numerous Linux commands into scripts, making it convenient to apply data processing pipelines and simultaneously thoroughly document and record this process, guaranteeing identical results each time one runs the script. Therefore, indubitably, this means preparing to share work with others in diverse ways.
- Remote Computing and Cloud Resources: Many data science projects require access to powerful computer resources, such as high-performance clusters or cloud-based platforms. Linux is the dominant operating system in these environments, and knowing the ins and outs of Linux commands is a critical skill for using these resources and managing remote computations effectively.
- Package Management and Software Installation: Linux distributions often come with package managers like
apt
,yum
, ordnf
, which simplifies installing, updating, and managing software packages. This is particularly important in data science, where you frequently need to install and configure various libraries, frameworks, and tools for data manipulation, visualization, and modeling. - Version Control and Collaboration: Git is an indispensable version control system for recording changes to computer code, data, and documents and enabling multiple team members to collaborate. Although Git works on different operating systems, it works smoothly with Linux as most Git commands are built around Linux’s file system and text-based command-line interface.
- Interoperability and Portability: Since Linux is a cross-platform operating system, scripts and commands written on one Linux system can generally be used on other Linux distributions or Unix-like systems with few or no changes. This portability is incredibly useful in data science, as you may work with various computing environments or develop your solutions to run on multiple platforms.
- Efficient Use of System Resources: Linux is popular due to its effective system resource utilization, and thus, it is a good platform to run data science tasks that require intensive computations. Knowing the commands that facilitate activity monitoring and system resource management is important. This information is useful for optimal system performance and preventing bottlenecks.
In conclusion, it is feasible to do most, if not all, data science work on other operating systems, like Windows or macOS. However, the Linux command line is a robust, versatile, and prevalent environment for data science. Learning and understanding Linux commands will help you own the tools and skills needed to work better, cooperate successfully, and generate high-quality outcomes that are easily replicable in data science.
Top 20 Linux Commands for Data Science in 2024
Here are the top Linux commands for data science in 2024:
pwd (Print Working Directory)
Displays the current working directory.
pwd
Example: pwd outputs /home/username/ if you’re in your home directory.
ls (List)
Lists the contents of the current directory.
ls
ls-l (long listing format)
ls-a (shows hidden files)
cd (Change Directory)
Changes the current working directory.
cd/path/to/directory
cd..(moves up one directory)
mkdir (Make Directory)
Creates a new directory.
mkdir new_directory
rm (Remove)
Deletes files or directories.
rm file.txt (deletes a file)
rm-r directory (deletes a directory recursively)
cp (Copy)
Copies files or directories.
cp file.txt/path/to/directory(copies a file)
cp-r directory1 directory2(copies a directory)
mv (Move)
Moves or renames files or directories.
mv file.txt/path/to/directory(moves a file)
mv file1.txt file2.txt(renames a file)
cat (Concatenate)
Displays the contents of a file.
cat file.txt
head and tail
Displays the first or last few lines of a file.
head file.txt(shows the first 10 lines)
tail file.txt(shows the last 10 lines)
grep (Global Regular Expression Print)
Searches for a pattern in one or more files.
grep "pattern" file.txt (searches for a pattern in a file)
sort
Sort the lines of a file.
sort file.txt (sorts the lines in ascending order)
wc (Word Count)
Counts the number of lines, words, and characters in a file.
wc file.txt
chmod (Change Mode)
Changes the permissions of a file or directory.
chmod 755 file.txt (gives read, write, and execute permissions)
sudo(Super User Do)
Runs a command with superuser (root) privileges.
sudo command
apt (Advanced Packaging Tool)
Used for installing, updating, and removing packages on Debian-based Linux distributions.
sudo apt update (updates the package lists)
sudo apt install package_name (installs a package)
pip (Pip Installs Packages)
Used for installing and managing Python packages.
pip install package_name
conda
Package manager and environment management system for Python.
conda create -n env_name python=3.8 (creates a new environment)
conda activate env_name (activates the environment)
git
Distributed version control system for tracking changes in source code.
git clone repository_url (clones a remote repository)
git add file.py (adds a file to the staging area)
git commit -m "commit message" (commits changes to the local repository)
ssh (Secure Shell)
Secure remote login and file transfer protocol.
ssh user@remote_host (connects to a remote host)
top and htop
Displays information about running processes and system resource usage.
top (shows a dynamic real-time view of running processes)
htop (an interactive process viewer)
These commands will help you navigate the Linux file system, manage files and directories, install packages, work with version control systems, and monitor system resources. As you gain more experience in data science, you’ll discover many more powerful Linux commands and tools to streamline your workflow.
Conclusion
In conclusion, mastering the Linux command line is vital for any data science professional. It provides a versatile and efficient data manipulation, analysis, and modeling environment. By becoming proficient in these 20 basic Linux commands, you can navigate the Linux file system, manage files and directories, install packages, and work effectively with data and scripts.
The knowledge you gain will help streamline your workflow and boost your productivity, whether handling large data sets, developing data processing pipelines, or working on remote servers. As you continue your journey in data science, you’ll find these commands form the foundation of your work, opening up a world of possibilities for automation, reproducibility, and collaboration.
I hope these Linux commands for data science are useful for you. Let us know in the comment section if you know any other Linux commands.