假设我有两个数据帧A和B,每个数据帧包含两个名为x和y的列。我希望连接这两个数据帧,但不是连接在两个数据帧中x和y列相等的行上,而是连接在A的x列是B的x列的子字符串且y列相同的行上。
if A[x][1]='mpla' and B[x][1]='mplampla'
我希望它能被捕获。
在sql上,它可能类似于:
select *
from A
join B
on A.x<=B.x and A.y<=B.y.
这样的事情能在python上完成吗?
我有一个数据帧,如下所示: test
# Name1 Name2 Match
#1 A C 1
#2 E NA 0
#3 D G 1
#4 R NA 0 如果两个name列都有非NA元素,则match列显示1,如果没有非NA元素,则显示0。我想创建一种读取数据帧的方法,以便如果测试$match == 0,则Name 1中的行元素将被复制到Name 2,如下所示: test
# Name1 Name2 Match
#1 A C 1
#2 E E
我有两个数据帧,分别称为1和2。第一个有索引-‘客户’。第二个也有索引-‘客户’,有一些相似的值,也有一些不同的值。第一个有列'P‘和'Q’。第二个也有名为'P‘和'Q’的列。我想连接两个数据帧,例如,如果第一个的索引值与第二个的索引值匹配,则将B中的'P‘和'Q’的相关值添加到第一个的'P‘和'Q’中。返回数据帧优先
示例1数据帧为:
customer P Q
A 0.5 4
B 0.4 6
C 0.3 5
D 0.7 7
第二个数据帧是:
我希望基于R中的2列合并2个数据帧,这两个数据帧称为popr和data列,它们共享相同的2个变量: USUBJID和TRTAG2N,这两个变量是我想要组合这两个数据帧的变量。
当我只尝试根据一列进行合并时,合并函数就能工作:
merged <- merge(popr,droppedcol,by="USUBJID")
当我试图通过使用2列合并并查看数据框架“工期”时,表是空的,没有值,只有列标题。它说“表中没有可用的数据”。
我的任务是在R中复制SAS代码:
data duration;
set pop combined1 ;
by usubjid trtag2n;
假设我有一个数据帧:
a = [['A','def'],['A','xyz'],['A','uiu'], ['B','jkl'], ['C','pqr'], ['C','rty']]
df1 = pd.DataFrame(a, columns=['1', '2'])
1 2
0 A def
1 A xyz
2 A uiu
3 B
我有一个场景,我希望在两个数据帧之间找到不匹配的行。这两个数据帧都有大约30列和一个唯一标识每条记录/行的id列。因此,我想检查df1中的行是否与df2中的行不同。df1是更新后的数据帧,df2是以前的版本。 我尝试了一种方法pd.concat([df1, df2]).drop_duplicates(keep=False),但它只是将两个数据帧结合在一起。有办法做到这一点吗。如果能帮上忙我会很感激的。 这两个dfs的示例数据如下所示。 id user_id type status 总共有39列,其中可能包含NULL值。 谢谢。 P.S. df2将始终是df1的子集。
如何从具有共同列值的两个数据帧中获得合并的数据帧,使得只有那些行使得合并的数据帧在特定的列中具有共同的值。
我有5000行df1格式:
director_name actor_1_name actor_2_name actor_3_name movie_title
0 James Cameron CCH Pounder Joel David Moore Wes Studi Avatar
1 Gore Verbinski Johnny Depp Orlando Bloom Jack Davenport Pirates
o
我有两个数据帧,A和B,我想从它们创建另外两个数据帧。
A_out将包括出现在A中但没有出现在A和B之间的内连接中的所有行(基于前两列)
类似地,B_out将包括出现在B中但没有出现在A和B之间的内连接中的所有行。
例如-对于数据帧:
答:
a 1
b 2
c 3
B:
b 2
c 3
d 4
预期输出为:
A_out:
a 1
B_out:
d 4
我试着用下面的代码来完成这个任务:
common = pileup_df.merge(lists_df.drop_duplicates(), on=['identifier', 'position'
我正在尝试合并两个都有'product_desc‘列的数据帧。我使用的是Pandas 0.13和Python 2.7。
small_df = pd.merge(small_df, linregress_df, on = 'product_desc', how = 'left')
但是,我得到以下错误:
pandas.core.index.InvalidIndexError: Reindexing only valid with uniquely valued Index objects
我将两个数据帧导出到平面文件中,其中的索引或其他列都没有重复值。我需
我是pandas的新手,我正在尝试基于一个特定列的相等性来连接两个数据帧。例如,假设我有以下内容:
df1
A B C
1 2 3
2 2 2
df2
A B C
5 6 7
2 8 9
两个数据帧具有相同的列,并且只有一列(例如A)的值可能相等。我想要的输出是:
df3
A B C B C
2 8 9 2 2
列'A‘的值在两个数据帧中都是唯一的。
谢谢
我有两个像这样的数据帧
df1
name ID abb
0 foo 251803 I
1 bar 376811 R
2 baz 174254 Q
3 foofoo 337144 IRQ
4 barbar 306521 IQ
df2
abb comment
0 I fine
1 R repeat
2 Q o
下面的简化代码连接所有myData数据帧列,除元素R之外,只有在数据帧中有多个R元素时才连接元素R,而在元素列中只有一个R的情况下,则显示单个R而不连接。 --当数据帧的元素列中没有R元素时,代码也应该可以工作--但是它不使用。
下面是运行代码时的正确输出,其中有两个R元素,而只有一个R元素--
有两个R元素:
Element Group ElementCnt finalCode
1 C 4 1 C.4.1
2 R 0 1 R.0.1
3 C 1 2 C