[英]Subtract each row of specific column from dataframe and add to the list -python
我正在嘗試從 DataFrame aa 中減去 A 列的每一行並將它們添加到列表中。
a = pd.DataFrame(np.random.randint(1,10,(5,4)),columns=['A','B','C','D'])
list=[]
對於這樣一個基本問題,我感到很抱歉,但我找不到解決方案。
編輯:剛剛意識到您只想從DataFrame
提取一列作為列表。 在這種情況下,就像@arkhadiusz 評論的那樣,您可以使用:
a.A.to_list()
請注意,這不會從您的DataFrame
刪除該列。 如果您想從DataFrame
完全刪除它,您可以使用:
a.pop('A').to_list()
假設您想從DataFrame
列中的每個元素中減去一個常量值,您可以嘗試以下操作:
x = 0.5 # some constant value you want to subtract
[val1 - val2 for val1, val2 in zip(a.A.to_list(), [x] * a.shape[0])]
或者,如果您想為每個元素減去不同的值,您可以嘗試:
x = [1, 2, 3, 4, 5]
[val1 - val2 for val1, val2 in zip(a.A.to_list(), x)]
如果我理解正確,你想要這個:
要獲得一個 numpy 數組:
lst = a[["B","C","D"]].subtract(a["A"], axis=0).values
要獲得二維列表:
lst = a[["B","C","D"]].subtract(a["A"], axis=0).values.T.tolist()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.