In [1]:
data1 = [6, 7.5, 8, 0, 1]
In [2]:
import numpy as np
import pandas as pd
In [3]:
arr1 = np.array(data1)
In [4]:
data2 = [[1, 2, 3, 4], [5, 6, 7, 8]]
arr2 = np.array(data2)
In [5]:
data1+data2
Out[5]:
In [6]:
arr2.shape
Out[6]:
In [7]:
arr2.ndim
Out[7]:
In [8]:
arr2.dtype
Out[8]:
In [9]:
type(arr2)
Out[9]:
In [10]:
arr1.dtype
Out[10]:
In [11]:
np.zeros((3,6))
Out[11]:
In [12]:
np.empty((2,3,2))
Out[12]:
In [13]:
arr1 = np.array([1, 2, 3], dtype=np.float64)
In [14]:
arr1
Out[14]:
In [15]:
arr = np.array([3.7, -1.2, -2.6, 0.5, 12.9, 10.1])
In [16]:
arr
Out[16]:
In [17]:
arr.astype(np.int32)
Out[17]:
In [18]:
numeric_strings = np.array(['1.25', '-9.6', '42'], dtype=np.string_)
In [19]:
numeric_strings.astype(float)
Out[19]:
In [41]:
arr = np.array([[1., 2., 3.], [4., 5., 6.]])
In [21]:
arr * arr
Out[21]:
In [22]:
1/arr
Out[22]:
In [23]:
arr **.5
Out[23]:
In [24]:
arr **2
Out[24]:
In [25]:
len(arr)
Out[25]:
In [32]:
arr
Out[32]:
In [33]:
arr[:]=55
In [34]:
arr
Out[34]:
In [52]:
#arr2 = np.array(xrange(1,12), shape=(3,4))
In [43]:
arr
Out[43]:
In [55]:
arr1 = np.arange(10)
In [58]:
arr1_slice = arr1[5:8]
In [59]:
arr1_slice
Out[59]:
In [60]:
arr1
Out[60]:
In [61]:
arr1_slice[:]=66
In [62]:
arr1_slice
Out[62]:
In [63]:
arr1
Out[63]:
In [65]:
arr2d = np.array([[1,2,3],[4,5,6],[22,33,44]])
In [66]:
arr2d
Out[66]:
In [67]:
arr2d[:2]
Out[67]:
In [70]:
arr2d[2,:2]
Out[70]:
In [71]:
arr2d[:,:1]
Out[71]:
In [72]:
names = np.array(['Bob', 'Joe', 'Will', 'Bob', 'Will', 'Joe', 'Joe'])
In [73]:
names
Out[73]:
In [74]:
data = randn(7,4)
In [75]:
data
Out[75]:
In [76]:
arr2d[2]
Out[76]:
In [77]:
arr2d[2,:]
Out[77]:
In [78]:
names=='Bob'
Out[78]:
In [79]:
data[names=='Bob']
Out[79]:
In [80]:
data
Out[80]:
In [81]:
data[names=='Bob', 2:]
Out[81]:
In [82]:
names!='Bob'
Out[82]:
In [84]:
data[-(names=='Bob')]
Out[84]:
In [86]:
data[data<0,]
Out[86]:
In [87]:
names!='Joe'
Out[87]:
In [102]:
arr3 = numpy.arange(0,32).reshape(8,4)
In [103]:
arr3
Out[103]:
In [104]:
for i in range(8):
arr3[i]=i *i
In [105]:
arr3
Out[105]:
In [94]:
for i in range(8):
arr3[i] = np.sqrt(i)
In [95]:
arr3
Out[95]:
In [99]:
np.arange(2,10,2).reshape(2,2)
Out[99]:
In [106]:
arr3
Out[106]:
In [107]:
arr3[[7,1,5,4]]
Out[107]:
In [108]:
arr3[[-1,-2,-3]]
Out[108]:
In [110]:
np.arange(10).reshape(5,2).T
Out[110]:
In [111]:
arr = np.random.randn(6,3)
In [113]:
np.dot(arr, arr.T)
Out[113]:
In [114]:
x = np.random.randn(8)
In [117]:
y = np.random.randn(8)
In [118]:
np.maximum(x,y)
Out[118]:
In [119]:
print x
print y
In [120]:
np.minimum(x,y)
Out[120]:
In [121]:
np.log10(x)
Out[121]:
In [122]:
points = np.arange(-5,5,0.01)
In [123]:
xs, ys = np.meshgrid(points, points)
In [126]:
xs.shape
Out[126]:
In [127]:
import matplotlib.pyplot as plt
In [128]:
z = np.sqrt(xs **2 + ys**2)
In [130]:
z.shape
Out[130]:
In [140]:
x = np.arange(0,20,1).reshape(5,4)
y = np.arange(-20,0,1).reshape(5,4)
In [141]:
x
Out[141]:
In [142]:
y
Out[142]:
In [144]:
np.sqrt(x **2 + y**2)
Out[144]:
In [145]:
plt.imshow(z, cmap=plt.cm.gray);
plt.colorbar()
Out[145]:
In [147]:
plt.imshow(np.sqrt(x**2+y**2), cmap=plt.cm.gray)
Out[147]:
In [148]:
xarr = np.array([1.1, 1.2, 1.3, 1.4, 1.5])
yarr = np.array([2.1, 2.2, 2.3, 2.4, 2.5])
In [149]:
cond = np.array([True, False, True, True, False])
In [151]:
result = [(x if c else y)
for x, y, c in zip(xarr, yarr, cond)]
In [152]:
result
Out[152]:
In [153]:
np.where(cond, xarr,yarr)
Out[153]:
In [160]:
arr = randn(4,4)
In [161]:
arr
Out[161]:
In [163]:
np.where(arr<0, -2, 2)
Out[163]:
In [164]:
arr = np.random.randn(5, 4)
In [165]:
arr
Out[165]:
In [166]:
randn(5,4)
Out[166]:
In [168]:
arr.mean()
Out[168]:
In [170]:
arr.mean(axis=0)
Out[170]:
In [171]:
arr = randn(100)
In [172]:
(arr >0 ).sum()
Out[172]:
In [173]:
arr = randn(10)
In [174]:
arr
Out[174]:
In [175]:
arr.sort()
In [176]:
arr
Out[176]:
In [185]:
arr = np.random.randn(20).reshape(4,5)
In [179]:
arr.sort(1)
In [186]:
arr
Out[186]:
In [187]:
arr.sort(1)
In [188]:
arr
Out[188]:
In [190]:
arr.sort(0)
In [191]:
arr
Out[191]:
In [199]:
random.randint(0,5)
Out[199]:
In [ ]: