Pandas入门

日常工作中经常需要数据分析,以前都是python脚本读取文件然后统计,十分麻烦。尝试了下Pandas,真香!

!cat data
123	600
23	67
563	456
345	345
import pandas as pd

读取txt文件

df = pd.read_table("./data", sep="\t", header=None, names=["A", "B"])    # 添加自定义列名:A, B
print(df)
     A    B
0  123  600
1   23   67
2  563  456
3  345  345

添加新的列

df["C"] = df["B"] / df["A"]
print(df)
print(df[["A", "C"]])
     A    B         C
0  123  600  4.878049
1   23   67  2.913043
2  563  456  0.809947
3  345  345  1.000000
     A         C
0  123  4.878049
1   23  2.913043
2  563  0.809947
3  345  1.000000

条件过滤

  • 单条件
t = df[df["C"]>2.5]
print(t)
     A    B         C
0  123  600  4.878049
1   23   67  2.913043
  • 多条件
t = df[(df["A"]>100) & (df["C"]<3)]
print(t)
     A    B         C
2  563  456  0.809947
3  345  345  1.000000

保存到文件

df.to_csv("./final.txt", sep="\t", index=False, header=None)
!cat final.txt
123	600	4.878048780487805
23	67	2.9130434782608696
563	456	0.8099467140319716
345	345	1.0

列过滤并求和

!cat stu.csv
name,age
Tome,12
Jack,NULL
Node,13
Node,NULL
df = pd.read_csv("./stu.csv")
a= df[df["age"].notna()]["age"].sum()
print(a)
25.0

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值