dataframe如何用索引删除列
时间: 2023-12-03 14:54:30 浏览: 42
在pandas中,可以使用`drop()`方法来删除DataFrame中的列。具体来说,可以通过指定`axis=1`来删除列,并通过`columns`参数指定要删除的列名。
例如,假设我们有一个名为`df`的DataFrame,其中包含三列`A`、`B`、`C`:
```
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
print(df)
```
输出结果为:
```
A B C
0 1 4 7
1 2 5 8
2 3 6 9
```
现在,我们想删除`B`列,可以使用如下代码:
```
df = df.drop(columns=['B'])
print(df)
```
输出结果为:
```
A C
0 1 7
1 2 8
2 3 9
```
其中,`columns=['B']`指定要删除的列名为`B`。注意,`drop()`方法会返回一个新的DataFrame,原DataFrame并没有被修改。如果要在原DataFrame上进行修改,可以使用`inplace=True`参数。
相关问题
dataframe删除索引列
要删除DataFrame中的索引列,可以使用`reset_index()`函数。如果只想删除索引列,并将结果存储在原始DataFrame中,则可以使用`inplace=True`参数。
例如,假设我们有一个名为`df`的DataFrame,它有一个名为`index_col`的索引列,我们可以使用以下代码删除该列:
```
df.reset_index(drop=True, inplace=True)
```
这将删除索引列并在原始DataFrame中更新结果。如果您不想在原始DataFrame中更新结果,则可以将`inplace=True`删除。
python 删除dataframe中的索引列
在 Pandas 中,数据框的索引列可以使用 `reset_index()` 方法去掉,也可以使用 `drop()` 方法删除。下面分别介绍这两种方法。
#### 使用 reset_index() 方法
使用 `reset_index()` 方法可以将数据框的索引列转化为数据列,从而去掉索引。例如:
```python
import pandas as pd
# 创建一个带有索引的 DataFrame
df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6]}, index=['x', 'y', 'z'])
# 输出带有索引的 DataFrame
print(df)
# 去掉索引并输出
df = df.reset_index()
print(df)
```
输出结果:
```
a b
x 1 4
y 2 5
z 3 6
index a b
0 x 1 4
1 y 2 5
2 z 3 6
```
可以看到,使用 `reset_index()` 方法将索引列转化为了数据列。
#### 使用 drop() 方法
使用 `drop()` 方法可以直接删除数据框中的索引列。例如:
```python
import pandas as pd
# 创建一个带有索引的 DataFrame
df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6]}, index=['x', 'y', 'z'])
# 输出带有索引的 DataFrame
print(df)
# 删除索引列并输出
df = df.drop(columns=df.index.name)
print(df)
```
输出结果:
```
a b
x 1 4
y 2 5
z 3 6
a b
x 1 4
y 2 5
z 3 6
```
可以看到,使用 `drop()` 方法直接删除了索引列。需要注意的是,删除索引列时需要使用 `columns` 参数指定要删除的列名,这里使用了 `df.index.name` 获取了索引列的列名。