前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pandas DataFrame 取整列

Pandas DataFrame 取整列

原创
作者头像
莫听穿林
修改2022-01-17 18:10:43
1.6K0
修改2022-01-17 18:10:43
举报
文章被收录于专栏:notenote

使用

代码语言:python
代码运行次数:0
复制
df = pd.read_csv("csv_file.csv") 

读出来的数据 就是 DataFrame 格式 ? <class 'pandas.core.frame.DataFrame'>

取整列的方式三种 (1⃣️ [] 2⃣️ loc 3⃣️ iloc)

参考:https://www.kdnuggets.com/2019/06/select-rows-columns-pandas.html

数据来源:https://www.kaggle.com/thebrownviking20/intro-to-recurrent-neural-networks-lstm-gru/data

IBM_2006-01-01_to_2018-01-01.csv

数据?
数据?

1⃣️ [] 直接用列名

代码语言:python
代码运行次数:0
复制
col_high = df[['High']].values
print(col_high)
print(col_high.shape)

⚠️有两层 []

df['High'].values.reshape(-1, 1) 和 上面代码里一样效果

如果 只打一层 [] 取出来的是 Series,其 shape 是(_, )即 数据是 1D array,而不是2D array

可能会导致之后 数据放进 模型报错(ValueError: Expected 2D array, got 1D array instead)

(eg. MinMaxScaler().fit() 中要求的数据类型就是 Expected 2D array)

查看 Dimension:.ndim

数据处理更详细的资料:https://towardsdatascience.com/get-into-shape-14637fe1cd32

2⃣️ iloc 用整数表示的列 取列(咱英语是计算机老师教的,官方名字解释?)

Purely integer-location based indexing for selection by position.

代码语言:python
代码运行次数:0
复制
col_integer_location = df.iloc[:, 1:2].values
print(col_integer_location)
print(col_integer_location.shape)

iloc [开始行:结束行(不含), 开始列:结束列(不含)] 空着表示全选

[:,1:2] 行全选,列选 1至2列 但不包含第2列

结果和 1⃣️ 是一样的 就不截图了?

3⃣️ loc 用列名 (lable)

.loc[] is primarily label based, but may also be used with a boolean array.

A boolean array of the same length as the axis being sliced, e.g. [True, False, True].

官文参考:https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.loc.html

代码语言:javascript
复制
col_label = df.loc[:, 'High':'High'].values
print(col_label)
print(col_label.shape)

用 label 取列 也会出现数字,但这里的数字表示列名 而非真正的列的位次(排第三也能叫第一)

loc 取列的时候 是包含结束列的,如果这里还写 'High':'Low' 那shape 就是 (_, 2) 了,即选了两列

loc [开始行:结束行(含), 开始列:结束列(含)]

结果和 1⃣️ 是一样的 就不截图了?

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 取整列的方式三种 (1⃣️ [] 2⃣️ loc 3⃣️ iloc)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档