DataFrame对象的创建,修改,合并
import pandas as pd
import numpy as np
1,创建DataFrame对象
# 创建DataFrame对象
df2 = pd.DataFrame([[1, 2, 3],[4, 5, 6]], columns=['col1','col2','col3'], index=['a','b'])
print (df2)
'''
col1 col2 col3
a 1 2 3
b 4 5 6
'''
2,基本操作
df2.index
# Index([u'a', u'b'], dtype='object')
df2.columns
# Index([u'col1', u'col2', u'col3'], dtype='object')
# 根据索引查看数据
df2.loc['a']
# 索引为a这一行的数据
df2.iloc[0] 跟上面的操作等价,一个是根据索引名,一个是根据数字索引访问数据
'''
col1 1
col2 2
col3 3
Name: a, dtype: int64
'''
df2.loc[['a','b']] # 访问多行数据,索引参数为一个列表对象
'''
col1 col2 col3
a 1 2 3
b 4 5 6
'''
df.loc[df.index[1:3]]
'''
cols
b 2
c 3
'''
3,计算
3.1 DataFrame元素求和 #(默认是对每列元素求和)
df2.sum()
'''
col1 5
col2 7
col3 9
dtype: int64
'''
#行求和
df2.sum(1)
'''
a 6
b 15
'''
#对每个元素乘2
df2*2
df2.apply(lambda x:x*2)
'''
col1 col2 col3
a 2 4 6
b 8 10 12
'''
#对每个元素求平方(支持ndarray一样的向量化操作)
df2**2
3.2 列扩充
# 对DataFrame对象进行列扩充
df2['col4'] = ['cnn','rnn']
print df2
'''
col1 col2 col3 col4
a 1 2 3 cnn
b 4 5 6 rnn
'''
# 也可以通过一个新的DataFrame对象来定义一个新列,索引自动对应
df2['col5'] = pd.DataFrame(['MachineLearning','DeepLearning'],index=['a','b'])
'''
col1 col2 col3 col4 col5
a 1 2 3 cnn MachineLearning
b 4 5 6 rnn DeepLearning
'''
3.3 行扩充
df2.loc['c']=[7,8,9,'xcc']
3.4 显示数据
df.head([n]) # 获取df中的前n行数据,n不指定,则默认为5
df.tail([n]) # 获取df中的后n行数据,n不指定,则默认为5
转载自 https://blog.youkuaiyun.com/u014281392/article/details/75331570
相关链接 https://blog.youkuaiyun.com/u010159842/article/details/52759224