python作为一门高度封装的编程语言,其中有数不清的函数方法。对于大多数人来说,都是了解了基本的语法结构和方法后就开始运用这门语言,遇到不会的边用边查边学。有时只想要用很简单的函数功能,去搜索却总会有好多复杂冗余的讲解,作为小小白,我也经常遇到这样的困惑,急用时真的很喜欢那种极简的博客,把函数给出,示例给出,用法一目了然。因此在csdn上记录下自己的python极简记,供自己复习,也与大家共享。
1. 保存:
import pandas as pd
res = {'name':['A','B','C'], 'age':[10, 10, 20], 'class':[1,2,2]}
res_pd = pd.DataFrame(data=res)
res_pd.to_csv('test.csv')
保存结果:
2.读取:
data = pd.read_csv('test.csv',index_col=0)
i_row = data.iloc[i].copy() # 获取第i行
name_col = data['name'].copy() # 获取'name'列,用copy修改不会报错
# 获取具体元素:
data.iloc[i]["name"]
data["name"][i]
3.示例输出
print(res_pd)
name age class
0 A 10 1
1 B 10 2
2 C 20 2
print(data.iloc[0])
name A
age 10
class 1
Name: name, dtype: object
print(data['name'])
0 A
1 B
2 C
Name: name, dtype: object
print(data.iloc[1]["name"])
print(data['name'][2])
B
C
4. 细节补充
(1)index_col参数:
index_col = None(default) : 索引为0,1,2,3......
index_col = i : 索引值变为第i列的元素
data.iloc[i]["name"] data["name"][i]
对于上方两个元素当索引值为默认时,两者相等。
NOTE:对于第二种情况,用设置的index_col或者下标均可访问,且索引值可能会返回多个值。但当索引值也为整数形式时,只能用索引形式访问,若没有对应索引值时会报错。
(2).copy()
如果仅仅是获取数据不进行修改,读取时可以不加.copy(),如果要对数据进行修改或者覆盖,需要用.copy()得到备份才能修改,修改时原数据不会被改变,若要实现改变需要重新保存进行覆盖。
(3)类型
直接读取到的data为数据帧DataFrame类型。
读取的一行或者一列为 Series类型,与字典的使用方式类似。
(期待您的指导建议和点赞鼓励!)