Pandas Dataframe基本技巧

390 阅读1分钟

11. 学习 + 练习

import numpy as np
import pandas as pd

# 查看   转置
df = pd.DataFrame(np.random.rand(16).reshape(8, 2) * 100, columns=['a', 'b'])

print(df.head(2))
print(df.tail())

# 转置
print(df.T)


# 添加和修改
df = pd.DataFrame(np.random.rand(16).reshape(4, 4), columns=['a', 'b', 'c', 'd'])
df['e'] = 10
print(df)
df.loc[4] = 20
print(df)

df[['a', 'c']] = 5
print(df)

df.iloc[::2] = 101
print(df)

# 删除列 不改变原数据
del df['e']
print(df)

# 删除行  改变原数据
print(df.drop(0))

print(df.drop([1, 2]))

# 删除列  改变数据
print(df.drop(['d'], axis=1))

# 对齐
df1 = pd.DataFrame(np.random.rand(16).reshape(4, 4), columns=['a', 'b', 'c', 'd'])
df2 = pd.DataFrame(np.random.rand(16).reshape(8, 2), columns=['a', 'b'])
print(df1 + df2)

# 排序
# 按值排序
df1 = pd.DataFrame(np.random.rand(16).reshape(4, 4)*100, columns=['a', 'b', 'c', 'd'])
# 一列 默认升序
print(df1.sort_values(['a'], ascending=True)) # 升序
print(df1.sort_values(['a'], ascending=False)) # 降序
# 多行排序
print(df1.sort_values(['a', 'c']))

# 按索引排序  默认升序
print(df1.sort_index())