概述
pandas数据结构(DataFrame)
DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值),DataFrame既有行索引也有列索引,可被看作是有Series组成的字典。
1、创建DataFrame
import pandas as pd
import numpy as np
# 创建DataFrame
data = {"color": ["green", "red", "blue", "black", "yellow"], "price": [1, 2, 3, 4, 5]}
dataFrame1 = pd.DataFrame(data=data) # 通过字典创建
dataFrame2 = pd.DataFrame(data=data, index=["index1", "index2", "index3", "index4", "index5"])
dataFrame3 = pd.DataFrame(data=data, index=["index1", "index2", "index3", "index4", "index5"], columns=["price"]) # 指定列索引
dataFrame4 = pd.DataFrame(data=np.arange(12).reshape(3, 4)) # 通过numpy数组创建
2、查找DataFrame中的元素
data = {"color": ["green", "red", "blue", "black", "yellow"], "price": [1, 2, 3, 4, 5]}
dataFrame2 = pd.DataFrame(data=data, index=["index1", "index2", "index3", "index4", "index5"])
frame_index = dataFrame2.index # 查找dataFrame中的所有行标签
frame_column = dataFrame2.columns # 查找dataFrame中所有列标签
frame_values = dataFrame2.values # 查找dataFrame中的所有值
frame_value1 = dataFrame2["color"]["index1"] # 索引查找数值(先列后行)
frame_value2 = dataFrame2.at["index1", "color"] # 索引查找数值
frame_value3 = dataFrame2.iat[0, 0] # 绝对位置查找数值
3、查找DataFrame中某一行/列元素
data = {"color": ["green", "red", "blue", "black", "yellow"], "price": [1, 2, 3, 4, 5]}
dataFrame2 = pd.DataFrame(data=data, index=["index1", "index2", "index3", "index4", "index5"])
# 查找DataFrame一行/列元素
frame_index_value1 = dataFrame2.ix["index1"] # 查找一行元素
frame_index_value2 = dataFrame2.ix[0] # 查找一行元素(绝对位置)
frame_index_value3 = dataFrame2.loc["index1"] # 查找一行元素
frame_index_value4 = dataFrame2.iloc[0] # 查找一行元素(绝对位置)
frame_index_value5 = dataFrame2.values[0] # 查找一行元素
frame_column_value1 = dataFrame2["price"] # 查找一列元素
frame_column_value2 = dataFrame2.loc[:, "price"] # 查找一列元素
frame_column_value3 = dataFrame2.iloc[:, 0] # 查找一列元素(绝对位置)
4、查找DataFrame中的多行/列元素
data = {"color": ["green", "red", "blue", "black", "yellow"], "price": [1, 2, 3, 4, 5]}
dataFrame2 = pd.DataFrame(data=data, index=["index1", "index2", "index3", "index4", "index5"])
# 查找DataFrame多行/列元素
dataFrame2.head(5) # 查看前5行元素
dataFrame2.tail(5) # 查看后5行元素
frame_index_values1 = dataFrame2["index1":"index4"] # 切片多行
frame_index_values2 = dataFrame2[0:4] # 切片多行
frame_index_values3 = dataFrame2.ix[["index1", "index2"]] # 多行
frame_index_values4 = dataFrame2.ix[[0, 1]] # 多行
frame_index_values5 = dataFrame2.loc[["index1", "index2"]] # 多行
frame_index_values6 = dataFrame2.iloc[[0, 1]] # 多行
frame_column_values1 = dataFrame2.loc[:, ["price"]] # 多列
frame_column_values2 = dataFrame2.iloc[:, [0, 1]] # 多列
frame_column_values3 = dataFrame2.ix[:, ["price", "color"]] # 多列
frame_column_values4 = dataFrame2.ix[:, [0, 1]] # 多列
5、查找DataFrame多行多列元素
# 查找DataFrame多行多列元素
frame_values1 = dataFrame2.loc[["index1", "index3"], ["price"]] # 索引查找
frame_values2 = dataFrame2.iloc[[1, 2], [0]] # 绝对位置查找
frame_values3 = dataFrame2.ix[["index1", "index3"], ["price"]]
frame_values4 = dataFrame2.ix[[1, 2], [0]]
6、添加一行/列元素
print("####添加一行元素####")
dataFrame2.loc["index6"] = ["pink", 3] # dataFrame2.loc["index6"]=10
dataFrame2.iloc[5] = 10
dataFrame2.ix["index7"] = 10
dataFrame2.append(dataFrame2.iloc[3], ignore_index=True)
print("####添加一列元素####")
dataFrame2.loc[:, "size"] = "small"
dataFrame2.iloc[:, 2] = 10
7、修改元素
# 修改元素
dataFrame2.loc["index1", "price"] = 100
dataFrame2.iloc[0, 1] = 10
dataFrame2.at["index1", "price"] = 100
dataFrame2.iat[0, 1] = 10
print(dataFrame2)
8、删除元素
dataFrame2.drop(["index6", "index7"], inplace=True) # inplace=True表示作用在原数组
dataFrame2.drop(["size"], axis=1, inplace=False)
最后
以上就是强健大地为你收集整理的python进阶—pandas教程(二)的全部内容,希望文章能够帮你解决python进阶—pandas教程(二)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复