in python3 带有pandas
,我有以下csv
格式数据集,如
salary_data.csv
YearsExperience,Salary
1.1,39343.00
1.3,46205.00
1.5,37731.00
但是,我在使用iloc
方法时意识到,如果我使用以下:
(例如 case 1 ),尽管结果是相同的,但Size
的表示方式不同。
import pandas as pd
dataset = pd.read_csv('data')
# Case 1
dataset.iloc[:, :1].values # Size: (3, 1)
# Case 2
dataset.iloc[:, 0].values # Size: (3,)
为什么添加:
给我一个不同的结果?我什么时候应该选择使用该:
?
它在熊猫页面中有很好的记录。
https://pandas.pydata.org/pandas-docs/stable/reference/PANDAS.DATAFRAME.ILOC.HTML
在情况1中您要做的是通过列切片。您已经通过:1,这意味着您需要从第一列到Col 1,这实际上是第一个。熊猫返回一个数组,该数组在您的情况下由(3,)表示。
尝试:
x = np.array([1, 2, 3, 4])
x.shape
输出:
(4,)
您可以在此处获得有关索引和切片的更多信息:
https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#indexing-slicing-slicing-with-labels