In [1]:
import numpy as np

In [2]:
a = np.array([0,1,2,3,4,5,6,7,8,9])

In [4]:
type(a)


Out[4]:
numpy.ndarray

In [6]:
b = []

for i in a :
    b.append(i * 2)
b


Out[6]:
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

In [7]:
a * 2


Out[7]:
array([ 0,  2,  4,  6,  8, 10, 12, 14, 16, 18])

In [9]:
b = np.array([[0, 1, 2], [3, 4, 5]])
b


Out[9]:
array([[0, 1, 2],
       [3, 4, 5]])

In [11]:
print (a.ndim)
print (a.shape)


1
(10,)

In [13]:
x = np.arange(3)
x


Out[13]:
array([0, 1, 2])

In [15]:
y = np.arange(5)
y


Out[15]:
array([0, 1, 2, 3, 4])

In [16]:
X, Y = np.meshgrid(x,y)

In [17]:
X


Out[17]:
array([[0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2]])

In [18]:
[zip(x, y) for x, y in zip(X, Y)]


Out[18]:
[[(0, 0), (1, 0), (2, 0)],
 [(0, 1), (1, 1), (2, 1)],
 [(0, 2), (1, 2), (2, 2)],
 [(0, 3), (1, 3), (2, 3)],
 [(0, 4), (1, 4), (2, 4)]]

In [19]:
%%writefile ~/data/sample1.csv
c1, c2, c3
1, 1.11, one
2, 2.22, two
3, 3.33, three


Writing C:\Users\ATIV/data/sample1.csv

In [21]:
import pandas as pd
pd.read_csv('~/data/sample1.csv')


Out[21]:
c1 c2 c3
0 1 1.11 one
1 2 2.22 two
2 3 3.33 three

In [23]:
df = pd.DataFrame(np.arange(10, 22).reshape(3, 4),
                  index=["a", "b", "c"],
                  columns=["A", "B", "C", "D"])
df


Out[23]:
A B C D
a 10 11 12 13
b 14 15 16 17
c 18 19 20 21

In [25]:
df.loc["a", "D"]


Out[25]:
13

In [26]:
df.loc["a",:]


Out[26]:
A    10
B    11
C    12
D    13
Name: a, dtype: int32

In [29]:
df[1:2]


Out[29]:
A B C D
b 14 15 16 17

In [36]:
df.iloc[2:]


Out[36]:
A B C D
c 18 19 20 21

In [37]:
s = pd.Series(range(10))
s[3] = np.nan

In [38]:
s.count()


Out[38]:
9

In [39]:
df.apply(lambda x: x.max() - x.min())


Out[39]:
A    8
B    8
C    8
D    8
dtype: int64

In [40]:
np.random.seed(0)
df4 = pd.DataFrame(np.random.randint(1, 10, (8, 4)), 
                  columns=[["A", "A", "B", "B"], ["C", "D", "C", "D"]],
                  index=[["M", "M", "M", "M", "F", "F", "F", "F"], ["ID" + str(i) for i in range(4)] * 2])
df4.columns.names = ["Cdx1", "Cdx2"]
df4.index.names = ["Rdx1", "Rdx2"]
df4


Out[40]:
Cdx1 A B
Cdx2 C D C D
Rdx1 Rdx2
M ID0 6 1 4 4
ID1 8 4 6 3
ID2 5 8 7 9
ID3 9 2 7 8
F ID0 8 9 2 6
ID1 9 5 4 1
ID2 4 6 1 3
ID3 4 9 2 4

In [41]:
df4.stack("Cdx1")


Out[41]:
Cdx2 C D
Rdx1 Rdx2 Cdx1
M ID0 A 6 1
B 4 4
ID1 A 8 4
B 6 3
ID2 A 5 8
B 7 9
ID3 A 9 2
B 7 8
F ID0 A 8 9
B 2 6
ID1 A 9 5
B 4 1
ID2 A 4 6
B 1 3
ID3 A 4 9
B 2 4

In [43]:
df4.unstack("Rdx2")


Out[43]:
Cdx1 A B
Cdx2 C D C D
Rdx2 ID0 ID1 ID2 ID3 ID0 ID1 ID2 ID3 ID0 ID1 ID2 ID3 ID0 ID1 ID2 ID3
Rdx1
F 8 9 4 4 9 5 6 9 2 4 1 2 6 1 3 4
M 6 8 5 9 1 4 8 2 4 6 7 7 4 3 9 8