df修改列名
时间: 2023-07-25 11:07:50 浏览: 52
你可以使用 Pandas 库中的 `rename()` 方法来修改 DataFrame 中的列名。该方法接受一个字典作为参数,其中键为旧列名,值为新列名。以下是一个示例:
```python
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 修改列名
df = df.rename(columns={'A': 'NewA', 'B': 'NewB'})
# 打印修改后的 DataFrame
print(df)
```
输出:
```
NewA NewB
0 1 4
1 2 5
2 3 6
```
在上面的示例中,我们首先创建了一个简单的 DataFrame,然后使用 `rename()` 方法将列名从 "A" 和 "B" 分别改为 "NewA" 和 "NewB"。
相关问题
python df修改列名
以下是三种Python修改DataFrame列名的方法:
1. 直接赋值修改列名
```python
import pandas as pd
df = pd.DataFrame({'c1':[1, 2, 3], 'c2': [4, 5, 6]})
print(df)
df.columns = ['d1', 'd2']
print(df)
```
2. 使用rename()方法修改列名
```python
import pandas as pd
df = pd.DataFrame({'c1':[1, 2, 3], 'c2': [4, 5, 6]})
print(df)
df.rename(columns={'c1': 'd1', 'c2': 'd2'}, inplace=True)
print(df)
```
3. 使用rename()方法修改列名,并将修改后的结果重新赋值给原DataFrame
```python
import pandas as pd
df = pd.DataFrame({'c1':[1, 2, 3], 'c2': [4, 5, 6]})
print(df)
df = df.rename(columns={'c1': 'd1', 'c2': 'd2'})
print(df)
```
df修改列名为原来列名的前三个字符
要将DataFrame的列名修改为原来列名的前三个字符,您可以使用`DataFrame.rename()`方法,并指定一个字典来映射新旧列名。
以下是一个示例代码:
```python
import pandas as pd
# 创建一个示例DataFrame
data = {'Column1': [1, 2, 3], 'Column2': [4, 5, 6], 'Column3': [7, 8, 9]}
df = pd.DataFrame(data)
# 打印原始DataFrame
print("原始DataFrame:")
print(df)
# 修改列名为前三个字符
new_columns = {col: col[:3] for col in df.columns}
df = df.rename(columns=new_columns)
# 打印修改后的DataFrame
print("修改后的DataFrame:")
print(df)
```
这将输出:
```
原始DataFrame:
Column1 Column2 Column3
0 1 4 7
1 2 5 8
2 3 6 9
修改后的DataFrame:
Col Col Col
0 1 4 7
1 2 5 8
2 3 6 9
```
在这个示例中,我们使用`DataFrame.rename()`方法将列名修改为前三个字符。我们首先创建一个字典`new_columns`,其中键是原始列名,值是前三个字符。然后,我们将字典传递给`rename()`方法,并将结果赋给新的DataFrame `df`。最后,我们打印修改后的DataFrame。
请注意,如果有多个列具有相同的前三个字符,那么在修改后的DataFrame中,只会保留一个列。
阅读全文