Spaces:
Sleeping
Sleeping
File size: 6,900 Bytes
d4e5a7c 731330d d4e5a7c 731330d 5394934 a03a407 d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 731330d d4e5a7c 731330d 5394934 d4e5a7c 5394934 731330d d4e5a7c 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d 5394934 731330d d4e5a7c 5394934 d4e5a7c 5394934 d4e5a7c 731330d d4e5a7c a03a407 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
import streamlit as st
import numpy as np
# Example functions with explanations
def example1():
explanation = "Importing the NumPy library."
code = "import numpy as np"
return explanation, code, None
def example2():
explanation = "Creating a simple NumPy array."
code = "array = np.array([1, 2, 3, 4, 5])\narray"
array = np.array([1, 2, 3, 4, 5])
return explanation, code, array
def example3():
explanation = "Creating an array with a range of values from 0 to 9."
code = "array = np.arange(10)\narray"
array = np.arange(10)
return explanation, code, array
def example4():
explanation = "Creating an array with 5 evenly spaced values between 0 and 1."
code = "array = np.linspace(0, 1, 5)\narray"
array = np.linspace(0, 1, 5)
return explanation, code, array
def example5():
explanation = "Reshaping a 2D array from shape (2, 3) to (3, 2)."
code = "array = np.array([[1, 2, 3], [4, 5, 6]])\nreshaped_array = array.reshape((3, 2))\nreshaped_array"
array = np.array([[1, 2, 3], [4, 5, 6]])
reshaped_array = array.reshape((3, 2))
return explanation, code, reshaped_array
def example6():
explanation = "Slicing a 1D array to get elements from index 1 to 3."
code = "array = np.array([1, 2, 3, 4, 5])\narray[1:4]"
array = np.array([1, 2, 3, 4, 5])
sliced_array = array[1:4]
return explanation, code, sliced_array
def example7():
explanation = "Using fancy indexing to select specific elements from a 2D array."
code = "array = np.array([[1, 2], [3, 4], [5, 6]])\nfancy_indexed_array = array[[0, 1], [1, 0]]\nfancy_indexed_array"
array = np.array([[1, 2], [3, 4], [5, 6]])
fancy_indexed_array = array[[0, 1], [1, 0]]
return explanation, code, fancy_indexed_array
def example8():
explanation = "Using boolean indexing to select elements greater than 3."
code = "array = np.array([1, 2, 3, 4, 5])\nboolean_indexed_array = array[array > 3]\nboolean_indexed_array"
array = np.array([1, 2, 3, 4, 5])
boolean_indexed_array = array[array > 3]
return explanation, code, boolean_indexed_array
def example9():
explanation = "Performing element-wise multiplication of a 1D array by 2."
code = "array = np.array([1, 2, 3, 4, 5])\narray * 2"
array = np.array([1, 2, 3, 4, 5])
result = array * 2
return explanation, code, result
def example10():
explanation = "Calculating the sum of all elements in a 2D array."
code = "array = np.array([[1, 2, 3], [4, 5, 6]])\nnp.sum(array)"
array = np.array([[1, 2, 3], [4, 5, 6]])
result = np.sum(array)
return explanation, code, result
def example11():
explanation = "Calculating the dot product of two matrices."
code = "matrix = np.array([[1, 2], [3, 4]])\nnp.dot(matrix, matrix)"
matrix = np.array([[1, 2], [3, 4]])
result = np.dot(matrix, matrix)
return explanation, code, result
def example12():
explanation = "Performing broadcasting by adding two 1D arrays element-wise."
code = "array = np.array([1, 2, 3])\narray + np.array([4, 5, 6])"
array = np.array([1, 2, 3])
result = array + np.array([4, 5, 6])
return explanation, code, result
def example13():
explanation = "Generating a 2x2 array with random values between 0 and 1."
code = "random_array = np.random.random((2, 2))\nrandom_array"
random_array = np.random.random((2, 2))
return explanation, code, random_array
def example14():
explanation = "Sorting a 1D array in ascending order."
code = "array = np.array([3, 1, 2])\nnp.sort(array)"
array = np.array([3, 1, 2])
sorted_array = np.sort(array)
return explanation, code, sorted_array
def example15():
explanation = "Finding the index of a value in a sorted array."
code = "array = np.array([1, 2, 3, 4, 5])\nnp.searchsorted(array, 3)"
array = np.array([1, 2, 3, 4, 5])
index = np.searchsorted(array, 3)
return explanation, code, index
def example16():
from skimage import data
explanation = "Calculating the mean value of an image."
code = "from skimage import data\nimage = data.camera()\nnp.mean(image)"
image = data.camera()
mean_value = np.mean(image)
return explanation, code, mean_value
def example17():
explanation = "Simulating random positions and velocities in a 2D space."
code = "positions = np.random.random((10, 2))\nvelocities = np.random.random((10, 2))\npositions + velocities"
positions = np.random.random((10, 2))
velocities = np.random.random((10, 2))
result = positions + velocities
return explanation, code, result
def example18():
explanation = "Calculating the mean of each column in a 2D array."
code = "data = np.random.random((100, 4))\nnp.mean(data, axis=0)"
data = np.random.random((100, 4))
mean_values = np.mean(data, axis=0)
return explanation, code, mean_values
def example19():
explanation = "Calculating the element-wise power of a 1D array."
code = "array = np.array([1, 2, 3])\nnp.power(array, 3)"
array = np.array([1, 2, 3])
result = np.power(array, 3)
return explanation, code, result
def example20():
explanation = "Calculating the cumulative sum of a 1D array."
code = "array = np.array([1, 2, 3, 4, 5])\nnp.cumsum(array)"
array = np.array([1, 2, 3, 4, 5])
result = np.cumsum(array)
return explanation, code, result
examples = [
("Example 1: Import NumPy", example1),
("Example 2: Create a simple array", example2),
("Example 3: Create an array with a range of values", example3),
("Example 4: Create an array with evenly spaced values using linspace", example4),
("Example 5: Reshape a 2D array", example5),
("Example 6: Slice a 1D array", example6),
("Example 7: Fancy indexing on a 2D array", example7),
("Example 8: Boolean indexing on a 1D array", example8),
("Example 9: Element-wise multiplication", example9),
("Example 10: Sum of all elements in a 2D array", example10),
("Example 11: Dot product of two matrices", example11),
("Example 12: Broadcasting example", example12),
("Example 13: Generate random numbers", example13),
("Example 14: Sort an array", example14),
("Example 15: Search for a value in a sorted array", example15),
("Example 16: Mean value of an image", example16),
("Example 17: Numerical simulation with random positions and velocities", example17),
("Example 18: Mean of each column in a 2D array", example18),
("Example 19: Element-wise power", example19),
("Example 20: Cumulative sum of an array", example20),
]
st.title("NumPy Course with Streamlit")
for title, func in examples:
st.header(title)
explanation, code, result = func()
st.write(explanation)
st.code(code)
if st.button(f"Run {title.split(':')[0]}"):
if result is not None:
st.write("Output:", result)
|