我试图将两个数据帧中的几个列合并到另一个数据帧中,但两个数据帧上的键列的命名都不正确。如果你看图片“原始的两个数据帧”,Table_1有一个键列"CostCenter“,而Table_2有一个键列"CC”。我希望最终结果看起来像标题为"New dataframe“的图片。如您所见,我只从Table_2检索了"Fixed/Variable“和"CostCenterName”,而没有带来"CC“、"CostCenterSummary”和“CostCenterName”列。 -谢谢你的帮助!-吉姆 Original two dataframe
我有两个数据帧:
DataFrame 1:
key A
0 K0 AT
1 K0 AT
2 K0 AT
3 K0 AT
DataFrame 2:
key
0 K0
我想创建一个第3个数据帧,结果是:
key A
0 K0 AT
列'A‘中的值对于每个键总是相同的。我使用了所有可能的连接或合并函数,但它总是给我这样的结果:
我想要返回一个行数等于第二个数据帧(=1)而不等于第一个数据帧(=4)的数据帧。
有谁有主意吗?我已经试了好几个小时了。
因此,我从标准普尔500指数,从csv文件中收集数据。我的问题是,我如何创建一个大的数据,它有500列和所有的价格。该守则目前是:
import pandas as pd
import pandas_datareader as web
import datetime as dt
from datetime import date
import numpy as np
def get_data():
start = dt.datetime(2020, 5, 30)
end = dt.datetime.now()
csv_file = pd.read_csv(os.pa
如何从具有共同列值的两个数据帧中获得合并的数据帧,使得只有那些行使得合并的数据帧在特定的列中具有共同的值。
我有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
我有两个数据帧(df1和df2) df1:
A B C D
12 52 16 23
19 32 30 09
df2:
A G C D E
12 13 16 04 100 我想在df1中创建一个名为' compare‘的新列,然后比较列'A’和'C‘,如果它们相同,则在该行中为'Compare’赋予'X‘值。 result = df1[df1["A"].isin(df2["A"].tolist())]不工作。
假设我有两个数据帧:
df1:
A
0 a
1 b
df2:
A
0 a
1 c
我希望结果是两个框架的联合,其中有一个显示该行所属的源数据框架的额外列。在重复的情况下,应删除重复项,并在相应的额外栏中显示这两个来源:
A B
0 a df1, df2
1 b df1
2 c df2
我可以获得级联的数据帧(df3),而不需要重复,如下所示:
import pandas as pd
df3=pd.concat([df1,df2],ignore_index=True).drop_duplicates().reset_index(drop=True)
我想/找不到一种方法来控制
那么,我如何添加两个数据帧,其中的行是为相同的row.names添加的:
x = data.frame(x = 1:10, y = 10:1); y = x
rownames(y) = as.numeric(rownames(x)) + 5
x + y #WRONG, rows should be offset by '5', producing a data.frame that has 15 rows.
可以使用ddply完成此操作,方法是添加一个索引列,如下所示(这也显示了我想要的结果):
x$id = as.numeric(rownames(x))
y$id = as
我有两个数据框架,我希望使用框架2中的属性在框架1中创建新列。
框架1
Name
alice
bob
carol
框架2
Name Type Value
alice lower 1
alice upper 2
bob equal 42
carol lower 0
期望结果
框架1
Name Lower Upper
alice 1 2
bob 42 42
carol 0 NA
因此,这两个框架的公共列都是Name。您可以使用Nam
我想合并两个数据帧,如下所示: df1.columns = A, B, C, E, ..., D df2.columns = A, B, C, F, ..., D 如果我合并它们,它会合并所有列。另外,因为列数很高,所以我不想在on中指定它们。我更喜欢排除那些我不想合并的列。我怎么才能做到这一点呢? mdf = pd.merge(df1, df2, exclude D) 我希望结果是这样的: mdf.columns = A, B, C, E, F ..., D_x, D_y