作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个大型数据集 answer
和 truth
我想从 answer
中随机抽取一个样本然后从 truth
取样本与采样 answer
具有相同的索引值数据集,但它不起作用!这是我所做的:
answer = pd.read_csv("answer.csv")
a = answer.sample(700)
truth = pd.read_csv("truth.csv")
truth = truth[truth.index.isin(a.index)]
>>> print(a)
item question worker answer
9597 20308 clueweb09-enwp01-00-19667 w339 0
7371 20228 clueweb09-en0001-18-32106 w108 1
5527 20180 clueweb09-en0005-86-40955 w127 0
8505 20270 clueweb09-en0010-50-16267 w101 1
18202 20958 clueweb09-en0010-91-30990 w153 0
... ... ... ... ...
18004 20956 clueweb09-en0007-62-27063 w685 1
5532 20180 clueweb09-en0000-46-11807 w108 1
11510 20412 clueweb09-enwp00-91-09937 w353 1
6343 20202 clueweb09-en0003-34-25466 w102 0
16222 20780 clueweb09-en0011-26-41543 w683 0
>>> print(truth)
item question truth
28 20002 clueweb09-en0009-15-02980 1
34 20002 clueweb09-en0010-92-14638 1
59 20002 clueweb09-en0011-89-08538 1
126 20012 clueweb09-en0007-39-22682 1
135 20012 clueweb09-en0007-24-18145 1
... ... ... ...
19610 20996 clueweb09-enwp00-98-10892 0
19626 20996 clueweb09-enwp00-97-10382 0
19663 20996 clueweb09-enwp01-53-09380 1
19676 20996 clueweb09-enwp01-63-12069 1
19688 20996 clueweb09-enwp01-69-11963 1
truth
给出不同的索引值?
最佳答案
您应该简单地传递 .loc
内的值但是,您会收到一个可以暂时忽略的 FutureWarning。下面是一个例子:
import pandas as pd
data_1 = {'index':[1,2,3,4,5],'Name':['Sanji','Zoro','Luffy','Nami','Chopper']}
data_2 = {'index':[1,2,5,6,7],'Enemies':['DfDqx','Kuro','BigM','Croco','Exodia']}
df_1 = pd.DataFrame(data_1)
df_2 = pd.DataFrame(data_2)
df_1 = df_1.set_index('index')
df_2 = df_2.set_index('index')
df_new = df_1.loc[df_2.index].dropna(how='any')
print(df_new)
Name
index
1 Sanji
2 Zoro
5 Chopper
dropna()
因为否则你将得到返回
df_1
的所有值与
NaN
对于索引值不存在的值。
关于 python : Why I can't compare indexes of two dataframes when one is random sample,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59954316/
我是一名优秀的程序员,十分优秀!