4.2. DataFrame Attributes

import pandas as pd
import numpy as np
np.random.seed(0)

df = pd.DataFrame(
    columns = ['Morning', 'Noon', 'Evening', 'Midnight'],
    index = pd.date_range('1999-12-30', periods=7),
    data = np.random.randn(7, 4))

df
#              Morning      Noon   Evening  Midnight
# 1999-12-30  1.764052  0.400157  0.978738  2.240893
# 1999-12-31  1.867558 -0.977278  0.950088 -0.151357
# 2000-01-01 -0.103219  0.410599  0.144044  1.454274
# 2000-01-02  0.761038  0.121675  0.443863  0.333674
# 2000-01-03  1.494079 -0.205158  0.313068 -0.854096
# 2000-01-04 -2.552990  0.653619  0.864436 -0.742165
# 2000-01-05  2.269755 -1.454366  0.045759 -0.187184

4.2.1. Columns

df.columns
# Index(['Morning', 'Noon', 'Evening', 'Midnight'], dtype='object')
df.columns = ['A', 'B', 'C', 'D']

df
#                    A         B         C         D
# 1999-12-30  1.764052  0.400157  0.978738  2.240893
# 1999-12-31  1.867558 -0.977278  0.950088 -0.151357
# 2000-01-01 -0.103219  0.410599  0.144044  1.454274
# 2000-01-02  0.761038  0.121675  0.443863  0.333674
# 2000-01-03  1.494079 -0.205158  0.313068 -0.854096
# 2000-01-04 -2.552990  0.653619  0.864436 -0.742165
# 2000-01-05  2.269755 -1.454366  0.045759 -0.187184

df.columns
# Index(['A', 'B', 'C', 'D'], dtype='object')

4.2.2. Indexes

df.index
# DatetimeIndex(['1999-12-30', '1999-12-31', '2000-01-01', '2000-01-02',
#                '2000-01-03', '2000-01-04', '2000-01-05'],
#                dtype='datetime64[ns]', freq='D')
df.index = [0, 1, 2, 3, 4, 5, 6]

df
#           A         B         C         D
# 0  1.764052  0.400157  0.978738  2.240893
# 1  1.867558 -0.977278  0.950088 -0.151357
# 2 -0.103219  0.410599  0.144044  1.454274
# 3  0.761038  0.121675  0.443863  0.333674
# 4  1.494079 -0.205158  0.313068 -0.854096
# 5 -2.552990  0.653619  0.864436 -0.742165
# 6  2.269755 -1.454366  0.045759 -0.187184

df.index
# Int64Index([0, 1, 2, 3, 4, 5, 6], dtype='int64')

4.2.3. Values

df.values
# array([[ 1.76405235,  0.40015721,  0.97873798,  2.2408932 ],
#        [ 1.86755799, -0.97727788,  0.95008842, -0.15135721],
#        [-0.10321885,  0.4105985 ,  0.14404357,  1.45427351],
#        [ 0.76103773,  0.12167502,  0.44386323,  0.33367433],
#        [ 1.49407907, -0.20515826,  0.3130677 , -0.85409574],
#        [-2.55298982,  0.6536186 ,  0.8644362 , -0.74216502],
#        [ 2.26975462, -1.45436567,  0.04575852, -0.18718385]])
values = np.zeros_like(df.values)
# array([[0., 0., 0., 0.],
#        [0., 0., 0., 0.],
#        [0., 0., 0., 0.],
#        [0., 0., 0., 0.],
#        [0., 0., 0., 0.],
#        [0., 0., 0., 0.],
#        [0., 0., 0., 0.]])

df.values = values
# Traceback (most recent call last):
# AttributeError: can't set attribute

4.2.4. Assignments

Todo

Create assignments