我有两个大熊猫数据帧,如下所示,其中col1,col2和col3在两个数据帧中都相同。我想以这样的方式连接两个数据帧,即新数据帧添加了col4和col5而不重复行。
df1 = pd.DataFrame(data = {'col1' : [1, 2, 3],
'col2' : [10, 11, 12], 'col3' : [1, 1, 2], 'col4' : [100, 200, 300]})
df1
col1 col2 col3 col4
0 1 10 1 100
1 2 11 1 200
2 3 12 2 300
df2 = pd.DataFrame(data = {'col1' : [1, 2, 3],
'col2' : [10, 11, 12], 'col3' : [1, 1, 2], 'col5' : [20, 40, 60]})
col1 col2 col3 col5
0 1 10 1 20
1 2 11 1 40
2 3 12 2 60
我的预期输出数据框:
col1 col2 col3 col4 col5
0 1 10 1 100.0 20
1 2 11 1 200.0 40
2 3 12 2 300.0 60
我尝试了以下代码,但是它复制了行,如下所示。
merge = pd.concat([df1, df2], axis=0, ignore_index=True)
col1 col2 col3 col4 col5
0 1 10 1 100.0 NaN
1 2 11 1 200.0 NaN
2 3 12 2 300.0 NaN
3 1 10 1 NaN 20.0
4 2 11 1 NaN 40.0
5 3 12 2 NaN 60.0
答案 0 :(得分:1)
int userInput = Convert.ToInt32(Console.ReadLine());
var result = dictionary.FirstOrDefault(x => x.Key == userInput);
if(result.Value != null)
Console.WriteLine("You chose book = {0}", result.Value);
else
Console.WriteLine("Wrong Input");