dataframe里怎么交换第一列和最后一列
时间: 2023-06-14 07:04:43 浏览: 80
假设你的DataFrame名字为df,可以使用以下代码交换第一列和最后一列:
```python
cols = list(df.columns)
cols[0], cols[-1] = cols[-1], cols[0]
df = df[cols]
```
这里,我们首先将列名存储在一个列表中,然后交换第一个和最后一个元素的位置,最后使用新的列名重新排序DataFrame。
相关问题
dataframe交换第一列和第二列
在Pandas中,你可以通过`insert()`和`pop()`函数来交换DataFrame的列顺序。以下是如何交换DataFrame的第一列和第二列的示例[^1]:
```python
import pandas as pd
# 加载数据
file_path = '/Users/Arithmetic/da-rnn-master/data/collectd67_power_after_test_smooth.csv'
dataset = pd.read_csv(file_path)
# 获取原始列名列表
cols = list(dataset)
# 使用pop()移除原第二列(假设为'ps_state-running'),并保存其索引
second_col_index = cols.index('ps_state-running')
# 使用insert()将原第一列插入到新位置0,即将原第二列移动到第一个位置
cols.insert(0, cols.pop(second_col_index))
# 更新DataFrame的列顺序
dataset = dataset[cols]
# 打印新的列名列表
print(dataset.columns.tolist()) # 输出新的列顺序
```
在这个例子中,`dataset.columns.tolist()`会返回更新后的列名列表,显示第一列(原第二列)已经位于首位。
dataframe怎样提取第一列数据和最后一列数据组成一个新的dataframe
假设你使用的是Python中的pandas库,可以使用以下代码来提取第一列数据和最后一列数据组成一个新的dataframe:
```python
import pandas as pd
# 假设原始dataframe为df
new_df = pd.DataFrame({'First Column': df.iloc[:, 0], 'Last Column': df.iloc[:, -1]})
```
其中,`iloc`函数用于通过索引位置来选取数据,`:`表示选取所有行,`0`表示选取第一列数据,`-1`表示选取最后一列数据。`pd.DataFrame`函数用于将选取的数据转换为新的dataframe。
请注意,`new_df`仅包含原始dataframe的第一列和最后一列数据,如果需要保留其他列数据,可以在`pd.DataFrame`函数中添加相应的列。
阅读全文