pandas使用

https://www.runoob.com/pandas/pandas-tutorial.html

一、什么是pandas,能做什么

Pandas 是 Python 语言的一个扩展程序库,用于数据分析。
Pandas 是一个开放源码、BSD 许可的库,提供高性能、易于使用的数据结构和数据分析工具。
Pandas 名字衍生自术语 “panel data”(面板数据)和 “Python data analysis”(Python 数据分析)。
Pandas 一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算)。
Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。
Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。
Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。

二、pandas 基础数据结构

pandas有两个基础的数据结构,Series和DataFrame,两者关系:DataFrame可以理解为一张表格,Series为表格里的列,在DataFrame中,所有Series使用共同的索引。

Pandas Series 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。
Series 由索引(index)和列组成,函数如下:


 # pandas.Series( data, index, dtype, name, copy)
 #data:一组数据(ndarray 类型)。
 #index:数据索引标签,如果不指定,默认从 0 开始。 
 #dtype:数据类型,默认会自己判断。
 #name:设置名称。
 #copy:拷贝数据,默认为 False。
 
import pandas as pd

a = [1, 2, 3]
myvar = pd.Series(a)
print(myvar) # print(myvar[1])

a = ["Google", "Runoob", "Wiki"]
myvar = pd.Series(a, index = ["x", "y", "z"])
print(myvar["y"])

sites = {1: "Google", 2: "Runoob", 3: "Wiki"}
myvar = pd.Series(sites)
print(myvar)

#只需要字典的一部分,则index指定index
sites = {1: "Google", 2: "Runoob", 3: "Wiki"}
myvar = pd.Series(sites, index = [1, 2])
print(myvar)

DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。

#pandas.DataFrame( data, index, columns, dtype, copy)
#data:一组数据(ndarray、series, map, lists, dict 等类型)。
#index:索引值,或者可以称为行标签。
#columns:列标签,默认为 RangeIndex (0, 1, 2, …, n) 。
#dtype:数据类型。
#copy:拷贝数据,默认为 False。

import pandas as pd

#使用列表创建
data = [['Google',10],['Runoob',12],['Wiki',13]]
df = pd.DataFrame(data,columns=['Site','Age'],dtype=float)
print(df)

#使用ndarray创建
data = {'Site':['Google', 'Runoob', 'Wiki'], 'Age':[10, 12, 13]}

#使用字典创建
data = [{'a': 1, 'b': 2},{'a': 5, 'b': 10, 'c': 20}]


data = {
  "calories": [420, 380, 390],
  "duration": [50, 40, 45]
}
# 数据载入到 DataFrame 对象
df = pd.DataFrame(data)
# 返回第一行
print(df.loc[0])
# 返回第二行
print(df.loc[1])
# 返回第一行和第二行
print(df.loc[[0, 1]])
#指定索引
df = pd.DataFrame(data, index = ["day1", "day2", "day3"])
print(df.loc["day2"])

三、DataFrame操作


df = pd.read_csv('nba.csv')
print(df.to_string())
print(df.head())
print(df.head(10)) #前十行
print(df.tail(10)) #后十行

cols = data.columns.values #列
for c in cols:
	print(c)
    d[c] = d[c].apply(lambda x : np.log(x+1) if x > -1 else -1)

# 保存 dataframe
df.to_csv('site.csv')

# 获取行列数
shape = df.shape
rows_num = shape[0]
cols_num = shape[1]
 
#获取元素值 https://blog.csdn.net/weixin_48419914/article/details/120329178
print(df_data.iat[0,0])

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值