如何使用熊猫获得特定的价值?

时间:2019-12-19 02:38:06

标签: python pandas csv

我想使用熊猫读取表,然后查看列并在列满足条件时获取某些值。

这是我到目前为止所拥有的:

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior">

<androidx.cardview.widget.CardView
    android:id="@+id/cardView"
    android:layout_width="match_parent"
    android:layout_height="150dp"
    android:layout_marginStart="32dp"
    android:layout_marginEnd="32dp"
    app:cardElevation="5dp"
    app:layout_anchor="@+id/appbar"
    app:layout_anchorGravity="bottom|center"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"/>

<de.hdodenhof.circleimageview.CircleImageView
    android:layout_width="120dp"
    android:layout_height="120dp"
    android:elevation="8dp"
    android:src="@drawable/bg4"
    app:layout_anchor="@+id/cardView"
    app:layout_anchorGravity="top|center" />
 </LinearLayout>

因此在这种情况下,我希望代码过滤C,并且如果C中的值大于0,则输出A和C。

从这里:

import pandas as pd
from numpy.random import randn
df = pd.DataFrame(randn(6,3),columns=list('ABC'))
df[C]>0

我想得到:


U          A         B         C
0  1.438161 -0.210454 -1.983704
1 -0.283780 -0.371773  0.017580
2  0.552564 -0.610548  0.257276
3  1.931332  0.649179 -1.349062
4  1.656010 -1.373263  1.333079
5  0.944862 -0.657849  1.526811

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用df.loc并设置要返回的列来完成此操作:

from numpy.random import randn 
df = pd.DataFrame(randn(6,3),columns=list('ABC')) 
df.loc[df['C']>0, ['A', 'C']]  


       A     C
1 -2.642 0.472
3  0.328 0.519
4 -0.298 0.721
5 -0.671 1.797