【发布时间】:2019-10-25 23:04:43
【问题描述】:
我正在使用 2 个不同形状的数据框 A 和 B
数据框 A 有 193 行和 33 列 数据框 B 有 2 行 196 列
我希望能够从数据框 A“省或州”中获取一列,并将其值附加到数据框 B 的“州”列。
我已经尝试了以下
我尝试的方法1:
dataframeB["State"] = dataframeA["Province or State"]
这不会用来自 Dataframe A 的 193 行值填充 DataframeB。它只是给出了
State
NaN
NaN
我希望用“省或州”中的字符串值填充州列,我该如何做到这一点?
编辑:
我可以通过使用以下方法将 DataFrameB 的行数设置为 193 来完成此操作:
num_rows = 93
for x in np.arange(0, num_rows):
dataframeB.loc[x] = [np.NaN for n in range(96)]
然后,我将 dataframeB 的 State 列设置为 DataframeA 的 Province 或 state 列
dataframeB['State'] = dataframeA['Province or State'].reset_index(drop = True)
【问题讨论】:
-
嗨!这部分有效,但它只用 2 行 dataframeA 填充 dataframeB。有没有办法将 A 的所有 193 行都放入 B 中?
-
你的意思是
dfB.assign(**dfA)?? -
当你说“追加”时,你到底想做什么?两个数据框如何连接?如果您只是追加,使用 dataframeB["State"] = dataframeA["Province or State"].values,您将获得一个包含 196 行和许多 NAN 列的数据框,因为您的原始数据框B 只有两行!
-
使用 .values 方法给我以下错误:::: ValueError: 值的长度与索引的长度不匹配 :-(
-
@samumich 请添加 2 个数据帧的样本和预期输出,否则很难说,答案将基于猜测,这将毫无结果。
标签: python pandas dataframe data-science