我有两个df1 df2具有相同行数和列数以及变量的数据框,我正在尝试比较choice两个数据框中的布尔变量。然后使用if/else用来操作数据。但是当我尝试比较布尔变量时似乎有些错误。
这是我的数据帧示例和代码:
#df1
v_100 choice #boolean
7 True
0 True
7 False
2 True
#df2
v_100 choice #boolean
1 False
2 True
74 True
6 True
def lastTwoTrials_outcome():
df1 = df.iloc[5::6, :] #df1 and df2 are extracted from the same dataframe first
df2 = df.iloc[4::6, :]
if df1['choice'] != df2['choice']: # if "choice" is different in the two dataframes
df1['v_100'] = (df1['choice'] + df2['choice']) * 0.5
Run Code Online (Sandbox Code Playgroud)
这是错误:
if df1['choice'] != df2['choice']:
File "path", …Run Code Online (Sandbox Code Playgroud) 我密谋ggplot用geom_point.x轴将是个体ID,y轴是变量A.如何在不重叠标签的情况下在x轴上绘制所有和各个ID值?ID可能不是连续的.
df样本(实际行长得多)
> df
ID A
1 4
2 12
3 45
5 1
Run Code Online (Sandbox Code Playgroud)
情节代码:
ggplot(df, aes(x = ID, y = A)) + geom_point()
Run Code Online (Sandbox Code Playgroud)
以上代码的间隔为x轴,但不显示个人ID.
谢谢!
我正在识别一个点是否位于多边形内。我有一个数据框包含点,另一个数据框包含多边形,所以我想将它们空间连接起来,如下所示:
gpd.sjoin(df_points, df_polygons, how = 'left')
Run Code Online (Sandbox Code Playgroud)
我知道默认值是predicate=intersects,但是intersects和有何within不同?我应该使用哪一个来实现我的目的?
谢谢
我的数据框有子类别,每个类别下(cat,dog,bird),统计信息呈现.我需要删除行,如果它们包含count和中的信息freq,并且只保留行sd和mean值.有些值是 NaN.
ValueError 发生在我的代码中.
DF:
var stats A B C
cat mean 2 3 4
NaN sd 2 1 3
NaN count 5 2 6
NaN freq 3 1 19
dog mean 8 1 2
NaN sd 2 1 3
NaN count 4 6 1
NaN freq 3 1 19
bird mean 2 3 4
NaN sd 2 1 3
NaN count 5 2 6 …Run Code Online (Sandbox Code Playgroud) 我有一个包含2个变量的数据框:ID和outcome.我想groupby ID第一,和计数的唯一值的数量outcome之内ID.
df
ID outcome
1 yes
1 yes
1 yes
2 no
2 yes
2 no
Run Code Online (Sandbox Code Playgroud)
预期产量:
ID yes no
1 3 0
2 1 2
Run Code Online (Sandbox Code Playgroud)
我的代码df[['PID', 'outcome']].groupby('PID')['outcome'].nunique()给出了唯一值本身的编号,例如:
ID
1 2
2 2
Run Code Online (Sandbox Code Playgroud)
但是我需要的是yes和no,我怎么能实现呢?谢谢!
我的数据框包括三列:标识符列A和B,它们的组合给出了一个唯一的标识符,Date我需要按每个标识符中的顺序对该列进行排序。在排序和分组之后,我希望在每个组中添加一个包含行号的列。
df
A B Date
cat CityA 2014-08-05
cat CityA 2012-09-14
cat CityA 1972-10-15
dog CityC 1999-12-01
dog CityC 1997-09-23
dog CityC 1995-12-19
Run Code Online (Sandbox Code Playgroud)
现在,这段代码有 group byA和Bsort Date,我如何添加行号?
grouped = df.sort_values(['A', 'B', 'Date'],
ascending=[True, True, False]).groupby(['A','B'])
Run Code Online (Sandbox Code Playgroud)
Expected df
A B Date rowNumber
cat CityA 2014-08-05 1
cat CityA 2012-09-14 2
cat CityA 1972-10-15 3
dog CityC 1999-12-01 1
dog CityC 1997-09-23 2
dog CityC 1995-12-19 3
Run Code Online (Sandbox Code Playgroud)