Numpy and Pandas Basics

NumPy Basics

  • NumPy Arrays:

    • Creating arrays: np.array([1, 2, 3]), np.zeros((2,3)), np.ones((3,3)), np.arange(0,10,2), np.linspace(0,1,5)

    • Array indexing & slicing: arr[0], arr[1:4], arr[::-1]

    • Boolean indexing: arr[arr > 5]

    • Reshaping: arr.reshape(2,3)

    • Data types: arr.dtype, arr.astype(np.float32)

  • Operations on Arrays:

    • Element-wise operations: arr1 + arr2, arr1 * arr2, np.sqrt(arr), np.exp(arr)

    • Aggregation: np.sum(arr), np.mean(arr), np.std(arr), np.max(arr), np.min(arr)

  • Broadcasting:

    • Understanding how NumPy expands dimensions for operations.

    • Example: Adding a 1D array to a 2D array.

  • Matrix Operations:

    • Dot product: np.dot(A, B)

    • Transpose: A.T

    • Inverse: np.linalg.inv(A)

    • Eigenvalues: np.linalg.eig(A)


2. Pandas Basics

  • Series & DataFrames:

    • Creating a Series: pd.Series([1, 2, 3], index=['a', 'b', 'c'])

    • Creating a DataFrame: pd.DataFrame({'A': [1,2,3], 'B': [4,5,6]})

    • Importing data: pd.read_csv('file.csv')

  • DataFrame Operations:

    • Indexing: df['column'], df.loc[row_label, column_label], df.iloc[row_index, col_index]

    • Filtering: df[df['A'] > 5]

    • Adding columns: df['C'] = df['A'] + df['B']

    • Dropping columns: df.drop('A', axis=1)

  • Aggregation & Descriptive Stats:

    • df.describe(), df.mean(), df.median(), df.std(), df.sum()

    • Grouping: df.groupby('column_name').sum()

  • Merging & Joining Data:

    • Concatenation: pd.concat([df1, df2])

    • Merging: pd.merge(df1, df2, on='key_column', how='inner')

  • Handling Missing Data:

    • Detecting: df.isnull()

    • Filling: df.fillna(value)

    • Dropping: df.dropna()