【发布时间】:2018-12-15 01:19:40
【问题描述】:
在 pandas python 中转换这个系列或数据框
1 2 3
到
1 0 0
0 2 0
0 0 3
如何以熊猫的方式进行。这可以通过循环和类似的东西来实现
【问题讨论】:
标签: python python-3.x pandas
在 pandas python 中转换这个系列或数据框
1 2 3
到
1 0 0
0 2 0
0 0 3
如何以熊猫的方式进行。这可以通过循环和类似的东西来实现
【问题讨论】:
标签: python python-3.x pandas
您可以使用 numpy 来执行此操作。 以下代码将起作用
import numpy as np
a = np.zeros((3, 3), int)
np.fill_diagonal(a, [1,2,3])
print(a)
输出:
array([[1, 0, 0],
[0, 2, 0],
[0, 0, 3]])
要将其转换为数据框,只需执行以下操作
import pandas as pd
d = pd.DataFrame(a)
print(d)
0 1 2
0 1 0 0
1 0 2 0
2 0 0 3
【讨论】: