pandas行列转置
时间: 2023-09-02 07:09:08 浏览: 113
要在 pandas 中进行行列转置,可以使用 DataFrame 的 `transpose()` 方法或者使用 `T` 属性。
以下是使用 `transpose()` 方法的示例:
```python
import pandas as pd
# 创建示例数据
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 行列转置
df_transposed = df.transpose()
print(df_transposed)
```
输出结果为:
```
0 1 2
A 1 2 3
B 4 5 6
```
使用 `T` 属性的示例:
```python
import pandas as pd
# 创建示例数据
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 行列转置
df_transposed = df.T
print(df_transposed)
```
输出结果与上述示例相同。
希望能帮到你!如果有任何问题,请随时问我。
相关问题
pandas 行列转换
您好!要将 Pandas DataFrame 的行列进行转换,您可以使用 `transpose()` 方法来实现。这个方法会将行和列进行互换。以下是使用示例:
```python
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 转换行列
transposed_df = df.transpose()
print(transposed_df)
```
这将输出如下结果:
```
0 1 2
A 1 2 3
B 4 5 6
```
在转换后的 DataFrame 中,原来的行变成了列,原来的列变成了行。希望这能帮到您!如果您还有其他问题,请随时提问。
pandas行列转换
我们可以使用 pandas 中的 `pivot` 和 `melt` 函数来进行行列转换。
假设我们有以下的数据集:
```
+------+--------+-------+
| Name | Gender | Score |
+------+--------+-------+
| Tom | Male | 85 |
+------+--------+-------+
| Amy | Female | 90 |
+------+--------+-------+
| Jim | Male | 75 |
+------+--------+-------+
| Kim | Female | 80 |
+------+--------+-------+
```
我们想要将 `Gender` 列作为行索引,将 `Name` 列作为列索引,将 `Score` 列的值填充到新的表格中。那么我们可以使用 `pivot` 函数来实现:
```python
import pandas as pd
data = {
'Name': ['Tom', 'Amy', 'Jim', 'Kim'],
'Gender': ['Male', 'Female', 'Male', 'Female'],
'Score': [85, 90, 75, 80]
}
df = pd.DataFrame(data)
new_df = df.pivot(index='Gender', columns='Name', values='Score')
```
得到的新表格如下:
```
+--------+------+-----+-----+-----+
| Gender | Amy | Jim | Kim | Tom |
+--------+------+-----+-----+-----+
| Female | 90 | 0 | 80 | 0 |
+--------+------+-----+-----+-----+
| Male | 0 | 75 | 0 | 85 |
+--------+------+-----+-----+-----+
```
如果我们想要将列索引转换成行索引,那么我们可以使用 `melt` 函数来实现:
```python
new_df = new_df.reset_index()
melt_df = pd.melt(new_df, id_vars=['Gender'], var_name='Name', value_name='Score')
melt_df = melt_df[melt_df['Score'] != 0].reset_index(drop=True)
```
得到的新表格如下:
```
+--------+------+-------+
| Gender | Name | Score |
+--------+------+-------+
| Female | Amy | 90 |
+--------+------+-------+
| Female | Kim | 80 |
+--------+------+-------+
| Male | Jim | 75 |
+--------+------+-------+
| Male | Tom | 85 |
+--------+------+-------+
```
以上就是 pandas 行列转换的方法。
阅读全文