怎么将一个DataFrame只取其中的几列作为一个新的DataFrame
时间: 2023-07-25 14:37:57 浏览: 125
你可以使用 pandas 的 loc 或 iloc 方法来选取 DataFrame 中的列,以创建一个新的 DataFrame。
- loc 方法:使用列名来选取列。例如,选取名为 col1 和 col2 的列:
```python
new_df = df.loc[:, ['col1', 'col2']]
```
- iloc 方法:使用列的索引来选取列。例如,选取索引为 0 和 1 的列:
```python
new_df = df.iloc[:, [0, 1]]
```
这两种方法都会返回一个新的 DataFrame,其中包含原始 DataFrame 中指定的列。注意,使用这些方法时需要注意 DataFrame 的索引和列名的对应关系。
相关问题
dataframe中取前几列
好的,我可以帮助您。在 Pandas 中,要从 DataFrame 中选择前几列,您可以使用 `.iloc` 方法。例如,如果您想要选择前三列,可以这样写:
```python
import pandas as pd
# 创建一个示例 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9], 'D': [10, 11, 12]})
# 选择前三列
df_first_three_columns = df.iloc[:, :3]
print(df_first_three_columns)
```
这将输出以下 DataFrame:
```
A B C
0 1 4 7
1 2 5 8
2 3 6 9
```
在 `.iloc` 中,`:`表示选取所有行,`0:3`表示选取前三列。希望这可以帮助您选择 DataFrame 的前几列。
dataframe连续取特定几列
要从DataFrame中连续取特定几列,可以使用切片操作。假设你的DataFrame名为df,你想要取第2列到第5列,可以使用如下代码:
```
df.iloc[:, 1:5]
```
这里的`iloc`函数用于基于行和列的整数位置进行索引。`:`表示选择所有行,`1:5`表示选择第2列到第5列(不包括第5列)。注意,索引是从0开始的。
如果你知道这几列的列名,也可以使用`loc`函数进行选取。假设这几列的列名分别为'col2'到'col5',代码如下:
```
df.loc[:, 'col2':'col5']
```
这里的`loc`函数用于基于标签进行索引,`:`表示选择所有行,'col2':'col5'表示选择从'col2'到'col5'的所有列(包括'col5')。
希望能帮到你!如果有任何疑问,请随时提问。
阅读全文