DataFrame中df.iloc
时间: 2023-06-17 12:06:28 浏览: 197
df.iloc 是 Pandas 中的一个用于按位置选择数据的方法,它可以通过行号和列号来选择 DataFrame 中的元素。它的语法为:
```python
df.iloc[row_index, column_index]
```
其中,row_index 和 column_index 可以是整数、整数列表、整数范围或布尔数组。
例如,选择第一行和第二列的元素:
```python
df.iloc[0, 1]
```
选择前三行和前两列的元素:
```python
df.iloc[:3, :2]
```
选择第二行和第四行的元素:
```python
df.iloc[[1, 3], :]
```
选择第一列和第四列的元素:
```python
df.iloc[:, [0, 3]]
```
总之,df.iloc 可以让我们以位置为基准来选择 DataFrame 中的元素。
相关问题
dataframe.iloc.values
The attribute `values` in the `iloc` property of a Pandas DataFrame returns a NumPy array representation of the DataFrame's values.
For example, suppose we have a DataFrame `df`:
```
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
```
We can access the values of the DataFrame using the `iloc` property:
```
values = df.iloc.values
```
This will return a NumPy array of the same shape as the DataFrame:
```
array([[1, 4, 7],
[2, 5, 8],
[3, 6, 9]])
```
Note that the `values` attribute returns a copy of the data, not a view. Therefore, any modifications made to the NumPy array will not affect the original DataFrame.
new_df = pd.DataFrame(columns=df.columns) for i in range(4, len(df)): if df.iloc[i, 0] == df.iloc[i-2, 0] and df.iloc[i, 3]-df.iloc[i-2, 3] == 200: row1 = df.iloc[i] row2 = df.iloc[i - 2] new_row = pd.concat([row1, row2], axis=0) new_df = new_df.append(new_row, ignore_index=False)AttributeError: 'DataFrame' object has no attribute 'append'
这个错误提示是因为在调用 `append` 方法时,使用的是 DataFrame 类型的对象 `new_df` ,而 DataFrame 没有 `append` 属性。可以尝试将 `ignore_index` 设置为 `True`,如下所示:
```
new_df = new_df.append(new_row, ignore_index=True)
```
或者,可以使用 `concat` 方法来将新行添加到 DataFrame 中:
```
new_df = pd.concat([new_df, new_row], ignore_index=True)
```
阅读全文