文章目录
一、pandas基础
(1)数据类型
- DateFrame
- Series
sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
example_1 = pd.Series(sdata)
example_1
data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada', 'Nevada'],
'year': [2000, 2001, 2002, 2001, 2002, 2003],'pop': [1.5, 1.7, 3.6, 2.4, 2.9, 3.2]}
example_2 = pd.DataFrame(data)
example_2
我个人理解的是, Series
是一个字典型的,而 DataFrame
则是像一个excel表格。
(2)基本操作
1. 导入并查看DataFrame每列的名称:
df.columns
2. 查看”Cabin”这列的所有值:
df['Cabin'] or df.Cabin
3. 删除某一列:
del test_1['a'] 或者 df.drop(['xxx'], axis = 1) 也可以使用该方法删除多列
4. 如果想要完全的删除你的数据结构,使用 inplace = True
将原数据进行覆盖。
(3)筛选的逻辑
1. 以’Age’为筛选条件,显示年龄在10岁以下的乘客信息。
df[df['Age']<10].head(3)
2. 交集:筛选在10-50岁的乘客:
midage = df[(df["Age"]>10)& (df["Age"]<50)]
midage.head(3)
3. 将上述midage的第100行的指定数据输出:
midage = midage.reset_index(drop=True)
midage.head(3)
注意这里使用了 reset_index()
函数,reset_index()方法可能最经常使用的地方是处理groupby()方法调用后的数据。 其功能是将原来的index设置为列,与set_index()方法的功能相反。
df=pd.read_excel(r'D:/myExcel/1.xlsx', index_col='id')
>>> df
id name score grade
a bog 45.0 A
c jiken 67.0 B
i bob 23.0 A
b jiken 34.0 B
g lucy NaN A
e tidy 75.0 B
>>> df.reset_index()
id name score grade
0 a bog 45.0 A
1 c jiken 67.0 B
2 i bob 23.0 A
3 b jiken 34.0 B
4 g lucy NaN A
5 e tidy 75.0 B
默认名称为index,可以通过 df.index.name
来进行修改。
索引的值也可以修改,参考以下代码:
>>> df.set_index(pd.Series(['f', 'b', 'g', 'm', 'k', 'l']), inplace=True)
>>> df
id name score grade
f a bog 45.0 A
b c jiken 67.0 B
g i bob 23.0 A
m b jiken 34.0 B
k g lucy NaN A
l e tidy 75.0 B
>>> df.index.name='newId'
>>> df
id name score grade
newId
f a bog 45.0 A
b c jiken 67.0 B
g i bob 23.0 A
m b jiken 34.0 B
k g lucy NaN A
l e tidy 75.0 B
>>> df.reset_index()
newId id name score grade
0 f a bog 45.0 A
1 b c jiken 67.0 B
2 g i bob 23.0 A
3 m b jiken 34.0 B
4 k g lucy NaN A
5 l e tidy 75.0 B
然后将第100行的两列数值输出出来,代码:
midage.loc[[100],['Pclass','Sex']]
这里简单介绍一下 :
(4) loc函数
和 iloc函数
:
在数据分析过程中,很多时候需要从数据表中提取出相应的数据,而这么做的前提是需要先”索引”出这一部分数据。虽然通过 Python 提供的索引操作符”[]”和属性操作符”.”可以访问 Series 或者 DataFrame 中的数据,但这种方式只适应与少量的数据,为了解决这一问题,Pandas 提供了两种类型的索引方式来实现数据的访问。
.loc[]:基于标签索引选取数据
df.loc[] 只能使用 标签索引
,不能使用整数索引。当通过标签索引的切片方式来筛选数据时,它的取值 前闭后闭
,也就是只包括边界值标签(开始和结束)。
loc[] 接受两个参数,并以’,’分隔。第一个位置表示行,第二个位置表示列。
df.loc['a':'d',:]
df.loc[['a','b','f','h'],['A','C']]
.iloc[]:基于整数索引选取数据
df.iloc[] 只能使用 整数索引
,不能使用标签索引,通过整数索引切片选择数据时, 前闭后开
(不包含边界结束值)。
同 Python 和 NumPy 一样,它们的索引都是从 0 开始。
df.iloc[2,:]
加油!干就完了!
数据分析入门 | kaggle泰坦尼克任务 系列持续更新,欢迎
点赞收藏
+关注
上一篇:数据分析入门 | kaggle泰坦尼克任务(一)—>数据加载和初步观察
下一篇:
本人水平有限,文章中不足之处欢迎下方👇评论区批评指正~
如果感觉对你有帮助,点个赞👍 支持一下吧 ~
不定期分享 有趣、有料、有营养内容,欢迎 订阅关注 🤝 我的博客 ,期待在这与你相遇 ~
Original: https://blog.csdn.net/Magic_Zsir/article/details/123512864
Author: 猿知
Title: 数据分析入门 | kaggle泰坦尼克任务(二)—>pandas基础
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/700025/
转载文章受原作者版权保护。转载请注明原作者出处!