如何将多个系列组合成一个数组或一列数据框?
How to combine multiple series into one array or a column of data frame?
我想标准化每组的分数。在我缩放数据后,它返回了一个系列。我无法在我的数据框中创建新列并将结果放入其中。
我得到的结果是这样的:
- 3M公司[[1.0], [1.0], [0.9]]
- A.O。史密斯公司 [[1.0], [0.85]]
- AES 公司 [[1.0], [0.5]]
result I got
我想要的结果是这样的:
- [1.0, 1.0, 0.9, 1.0, 0.85, 1.0, 0.5]
在那种情况下,我可以将其放入数据框中的新列中。谁能帮我?谢谢!!
您有一系列要展平的列表列表。这与 相关,只是您多了一层嵌套列表。
您将不得不遍历系列中的每个项目并将它们展平。使用列表理解:
dd = pandas.Series(
data=[
[[1.0], [1.0], [0.9]],
[[1.0], [0.85]],
[[1.0], [0.5]]
],
index=['3M Company', 'A.O. Smith Corp', 'AES Corp']
)
flattened = [item[0] for row in dd for item in row]
这导致
[1.0, 1.0, 0.9, 1.0, 0.85, 1.0, 0.5]
Sum_array = []
ThreeM = ['1.0', '1.0', '0.9']
AO = ['1.0', '0.85']
AES = ['1.0', '0.5']
for x in range(0, ThreeM.__len__()):
Sum_array.append(ThreeM[x])
for x in range(0, AO.__len__()):
Sum_array.append(AO[x])
for x in range(0, AES.__len__()):
Sum_array.append(AES[x])
print(Sum_array)
我想标准化每组的分数。在我缩放数据后,它返回了一个系列。我无法在我的数据框中创建新列并将结果放入其中。
我得到的结果是这样的:
- 3M公司[[1.0], [1.0], [0.9]]
- A.O。史密斯公司 [[1.0], [0.85]]
- AES 公司 [[1.0], [0.5]]
result I got
我想要的结果是这样的:
- [1.0, 1.0, 0.9, 1.0, 0.85, 1.0, 0.5]
在那种情况下,我可以将其放入数据框中的新列中。谁能帮我?谢谢!!
您有一系列要展平的列表列表。这与
您将不得不遍历系列中的每个项目并将它们展平。使用列表理解:
dd = pandas.Series(
data=[
[[1.0], [1.0], [0.9]],
[[1.0], [0.85]],
[[1.0], [0.5]]
],
index=['3M Company', 'A.O. Smith Corp', 'AES Corp']
)
flattened = [item[0] for row in dd for item in row]
这导致
[1.0, 1.0, 0.9, 1.0, 0.85, 1.0, 0.5]
Sum_array = []
ThreeM = ['1.0', '1.0', '0.9']
AO = ['1.0', '0.85']
AES = ['1.0', '0.5']
for x in range(0, ThreeM.__len__()):
Sum_array.append(ThreeM[x])
for x in range(0, AO.__len__()):
Sum_array.append(AO[x])
for x in range(0, AES.__len__()):
Sum_array.append(AES[x])
print(Sum_array)