【发布时间】:2017-12-06 14:42:39
【问题描述】:
我有两个数据框 df1 和 df2。
df1:
PartNumber
0000D3447E
0000D3447E
0000D3447E12
0000D3447E
0000D3447E
0000D3447E
0000D3447E2345
0000F2892E
0000F2892E
0000F2892E
0000F2892E34
0000F2892E
0000F2892E
0000F2892E12
df2:
PartNumber
0000D3447E39S
0000D3447E39S
0000D3447E39S
0000D3447E39S
0000D3447E39S
0000D3447E39S
0000D3447E39S2245
0000F2892EDI1
0000F2892EDI1
0000F2892EDI1
0000F2892EDI124
0000F2892EDI1
0000F2892EDI1
0000F2892EDI1
0000D1617EAD6
0000D1617EAD6
0000D1617EAD6137
0000D1617EAD6
0000D1617EAD6
0000D1617EAD612
0000D1617EAD6
0000D3447EYG1
0000D3447EYG1
0000D3447EYG1
0000D3447EYG1
0000D3447EYG1
0000D3447EYG1
0000D3447EYG1
我需要从 df1 获取 '0000D3447E' 并获取包含此字符串的 df2 的列计数,并通过创建一个新列来更新 df1 中的计数。
给定答案 df1['count_of_colors'] = df1['PartNumber'].map(df2['PartNumber'].str[:10].value_counts())
可能会解决问题,但字符串不是恒定的 10 个字符。所以,我得到错误的字符串计数,因为字符串被限制为 str[:10] 个字符。
谢谢。
【问题讨论】:
-
考虑接受正确解决您问题的答案。如果两者都没有,请添加预期输出。我个人对您提供的样本数据计数为零的事实感到困惑。请考虑在添加预期输出之前更新问题中的数据。
标签: python python-3.x pandas numpy