df
Veri çerçevesini bir dizeyle karşılaştırtamıyorum! Ama onun devrik karşılaştırabilirsiniz
df = pd.DataFrame({
1: [1, 2],
2: ['a', 3],
3: [None, 7]
})
df
1 2 3
0 1 a NaN
1 2 3 7.0
Ben
df == 'a'
TypeError: Could not compare ['a'] with block values
Ancak bir dize ile karşılaştırmak, devrik alarak sorunu giderir dataframe düşünün ?!
(df.T == 'a').T
1 2 3
0 False True False
1 False False False
bu hatası nedir? Veri ağımı nasıl yapılandıracağımla ilgili bir şey mi? Transpoze ile kıyaslama konusunda farklı olan nedir? Veri çerçevesi oluştururken
Temelde, karışık bir çeşitliliğe sahip olduğunuz anlamına gelir (böylece tüm değerleri tek bir numpy dizisinde tutamaz - blokları kullanması gerekir). Transpoze ettiğinizde, her iki sütun da nesneye dönüşür ve böylece karşılaştırma yapabilir. – ayhan
Evet, aynı sonuca vardım ... 'df.astype (str) .eq ('a')' veya 'df.select_dtypes (['object']) kullanamazsınız. Eq ('a') '? – MaxU
neden hala kafam karıştı, neden cevap olmadığını anlamıyorum. (-: – piRSquared