0
我有它返回兩個列表的功能,所以可以挽救那些在兩個變量,如:解壓功能爲數據幀
list_a,list_b = my_function(input)
我想這直接保存到數據幀,這樣的事情:
df[['list_a','list_b']] = my_function(input)
我得到了以下錯誤:
array is not broadcastable to correct shape
我有它返回兩個列表的功能,所以可以挽救那些在兩個變量,如:解壓功能爲數據幀
list_a,list_b = my_function(input)
我想這直接保存到數據幀,這樣的事情:
df[['list_a','list_b']] = my_function(input)
我得到了以下錯誤:
array is not broadcastable to correct shape
使用
df['B'], df['C'] = my_function()
解壓由my_function
返回列表的元組並分配名單df['B']
和df['C']
:
import pandas as pd
N = 5
def my_function():
return [10]*N, [20]*N
df = pd.DataFrame({'A':[1]*N})
df['B'], df['C'] = my_function()
產生
A B C
0 1 10 20
1 1 10 20
2 1 10 20
3 1 10 20
4 1 10 20
注意,列表的長度由my_function
必須返回匹配長度爲df
。
import pandas as pd
list_a, list_b = my_function(input)
df = pd.DataFrame([list_a, list_b], columns=['a','b'])
或組合在一個行:
df = pd.DataFrame(list(my_function(input)), columns=['a','b'])