اذهب إلى المحتوى

السؤال

نشر

هل يمكنني الحصول على مصفوفة من أطار بيانات 

لنفرض لدي الكود الاتي:

import numpy as np
import pandas as pd

index = [1, 2, 3, 4, 5, 6, 7]
a = [np.nan, np.nan, np.nan, 0.1, 0.1, 0.1, 0.1]
b = [0.2, np.nan, 0.2, 0.2, 0.2, np.nan, np.nan]
c = [np.nan, 0.5, 0.5, np.nan, 0.5, 0.5, np.nan]
df = pd.DataFrame({'A': a, 'B': b, 'C': c}, index=index)
df = df.rename_axis('ID')

يظهر الخرج

label   A    B    C
ID                                 
1   NaN  0.2  NaN
2   NaN  NaN  0.5
3   NaN  0.2  0.5
4   0.1  0.2  NaN
5   0.1  0.2  0.5
6   0.1  NaN  0.5
7   0.1  NaN  NaN

ارغب بالحصول على هذا الخرج , هل يمكنني ذلك؟ما هي التعليمة التي تمكنني من ذلك؟

array([[ nan,  0.2,  nan],
       [ nan,  nan,  0.5],
       [ nan,  0.2,  0.5],
       [ 0.1,  0.2,  nan],
       [ 0.1,  0.2,  0.5],
       [ 0.1,  nan,  0.5],
       [ 0.1,  nan,  nan]])

 

Recommended Posts

  • 1
نشر

لتحويل pandas dataframe لِ numpy, يمكنك استخدام df.values في الكود الخاص بك.

يمكنك استخدام الكود التالي ليظهر الخرج كما تريد 

import numpy as np

import pandas as pd

index = [1, 2, 3, 4, 5, 6, 7]

a = [np.nan, np.nan, np.nan, 0.1, 0.1, 0.1, 0.1]

b = [0.2, np.nan, 0.2, 0.2, 0.2, np.nan, np.nan]

c = [np.nan, 0.5, 0.5, np.nan, 0.5, 0.5, np.nan]

df = pd.DataFrame({'A': a, 'B': b, 'C': c}, index=index)

df = df.rename_axis('ID').values

print(df)

وهذه صورة مرفقة من الخرج الذي ظهر لي عند تنفيذ الكود إعلاه.

1010.PNG

  • 0
نشر

يمكن تحقيق ذلك بعدة طرق إضافية: 
 

# تعريف اطار البيانات
df = pd.DataFrame(data={'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}, 
                  index=['a', 'b', 'c'])
# تحويل اطار البيانات
df.to_numpy()
# تحويل عمود محدد
df[['A', 'C']].to_numpy()

او طريقة أخرى: 
 

df.index.to_numpy()

df['A'].to_numpy()

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...