我的两个样品df如下。你知道吗
df1型
Column1
1
2
3
4
5
6
7
8
9
10
11
12
13
df2型
Column 1 Column2
1 A
2 B
3 C
4 D
5 E
6 F
7 G
8 H
9 I
10 J
我想要的是在df1上合并两个df,这非常简单。但如果在df2中找不到该值,我想查看一个范围。
e、 g.如果为NaN,则应进一步查看它是否在11到13之间,然后应为“C”,如果它在14到18之间,则应返回“D”,如果在19到25之间,则结果应为“e”。你知道吗
Tags:
与左连接合并,然后相应地重新填充。 更新:
您需要使用merge并用
fillna()
替换nan。你知道吗输出:
编辑1:
如果您有一个范围来创建fill\u dict dictionary,您可以使用
dict.fromkeys()
或者您也可以使用列表理解来创建fill\ u dict dict
编辑2:
根据我们的聊天记录,你能试试这个吗:
我没有用int的范围创建dict,因为您的数据有浮点值,我想到了使用
np.arange()
,但是用十进制精度识别正确的键有点问题。所以,我想写一个函数来生成密钥。我确信这在性能方面是不高效的。但它完成了任务。应该有其他有效的解决办法。你知道吗输出:
您必须创建具有不同范围的fill dict,并使用
start
和stop
值将其附加到fill dict中,step
应该是递增的方式。根据您共享的数据,我假设步长为0.0001,但这对于dict来说太多了。您可以根据您的需求考虑将step
减少到0.1或0.01的方法。你知道吗相关问题 更多 >
编程相关推荐