1
ここでPythonを学んでください。私は2つの部分からなる問題を抱えています。最初の部分に対する解決策を作成しましたが、目標を達成するためにはるかに無限の方法が必要です。 2番目の部分は、どのように進めるか分かりません。python pandas:データフレームの列の値が別のデータフレームの列にあるかどうかを確認し、それを数えてリストアップしてください。
私は2つの別々のデータフレームにユニークなIDの列を持っています。私は、df_1のuid列のdf_2 uid列のuidが何回発生したのかを数え、両方の場合はそのuidをリストに追加します。次のコード例は私のために働いていますが、私はどこかに問題があると心配していますし、もっと良い方法が必要です。第2の部分はDF1の値のためのDFで列を作成し、DF1からの値を加算さ
df
uid value
0 uid1 1
1 uid2 2
2 uid3 3
3 uid4 4
df1
uid value1
0 uid4
1 uid2 5
2 uid5 6
count = 2
['uid4', 'uid2']
:出力
data = {'uid':['uid1', 'uid2', 'uid3', 'uid4'], 'value': [1, 2, 3, 4]}
df = pd.DataFrame(data)
data1 = {'uid':['uid4', 'uid2', 'uid5'], 'value1': ["", 5, 6]}
df1 = pd.DataFrame(data1)
count_val_in_both_df = 0
list_val_in_both_df = []
for x in range(len(df1.iloc[:, 0])) :
if df1.iloc[x, 0] in df.iloc[:, 0].values :
count_val_in_both_df += 1
list_val_in_both_df.append(df1.iloc[x, 0])
print('count = ' + str(count_val_in_both_df))
print(list_val_in_both_df)
。私はそれのこの部分にかなり失われていますが、このような結果が欲しい:
{ uid value value1
0 uid1 1
1 uid2 2 5
2 uid3 3
3 uid4 4 }
そんなに良くなります私は試していた。ありがとう、トン – fmc100
@ fmc100、ありがとう。あなたの質問が解決したら、答えを受け入れてください。 – Vaishali