আমার একটি তালিকা আছে 'এবিসি' এবং একটি ডেটাফ্রেম 'ডিএফ':
abc = ['foo', 'bar']
df =
A B
0 12 NaN
1 23 NaN
আমি তালিকাটি 1B কক্ষে sertোকাতে চাই, তাই আমি এই ফলাফলটি চাই:
A B
0 12 NaN
1 23 ['foo', 'bar']
হো আমি এটা করতে পারি?
1) আমি যদি এটি ব্যবহার করি:
df.ix[1,'B'] = abc
আমি নিম্নলিখিত ত্রুটি বার্তা পেয়েছি:
ValueError: Must have equal len keys and value when setting with an iterable
কারণ এটি একটি সারি / কলামে তালিকাটি সন্নিবেশ করানোর চেষ্টা করে (এতে দুটি উপাদান রয়েছে) কিন্তু কোনও ঘরে নেই।
2) আমি যদি এটি ব্যবহার করি:
df.ix[1,'B'] = [abc]
তারপরে এটি একটি তালিকা সন্নিবেশ করায় যার কেবলমাত্র একটি উপাদান রয়েছে যা 'এবিসি' তালিকা ( [['foo', 'bar']]
)।
3) আমি যদি এটি ব্যবহার করি:
df.ix[1,'B'] = ', '.join(abc)
তারপরে এটি একটি স্ট্রিং সন্নিবেশ করায়: ( foo, bar
) তবে তালিকা নয়।
4) আমি যদি এটি ব্যবহার করি:
df.ix[1,'B'] = [', '.join(abc)]
তারপরে এটি একটি তালিকা সন্নিবেশ করায় তবে এটিতে কেবল একটি উপাদান রয়েছে ( ['foo, bar']
) তবে দুটি হিসাবে নয় আমি চাই ( ['foo', 'bar']
)।
সাহায্যের জন্য ধন্যবাদ!
সম্পাদনা
আমার নতুন ডেটাফ্রেম এবং পুরানো তালিকা:
abc = ['foo', 'bar']
df2 =
A B C
0 12 NaN 'bla'
1 23 NaN 'bla bla'
অন্য ডেটাফ্রেম:
df3 =
A B C D
0 12 NaN 'bla' ['item1', 'item2']
1 23 NaN 'bla bla' [11, 12, 13]
আমি df2.loc[1,'B']
এবং / অথবা মধ্যে 'abc' তালিকাটি sertোকাতে চাই df3.loc[1,'B']
।
যদি ডেটাফ্রেমে কেবলমাত্র পূর্ণসংখ্যার মান এবং / অথবা NaN মান এবং / অথবা তালিকার মানগুলির সাথে কলাম থাকে তবে একটি ঘরে কোনও তালিকা সন্নিবেশ করা পুরোপুরি কার্যকর হয়। যদি ডেটাফ্রেমে কেবল স্ট্রিং মান এবং / অথবা এনএএন মান এবং / অথবা তালিকার মানগুলির সাথে কলাম থাকে তবে একটি ঘরে কোনও তালিকা সন্নিবেশ করা পুরোপুরি কার্যকর হয়। তবে যদি ডেটাফ্রেমের পূর্ণসংখ্যা এবং স্ট্রিংয়ের মান এবং অন্যান্য কলামগুলির সাথে কলাম থাকে তবে ত্রুটি বার্তা উপস্থিত হয় যদি আমি এটি ব্যবহার করি: df2.loc[1,'B'] = abc
বা df3.loc[1,'B'] = abc
।
অন্য ডেটাফ্রেম:
df4 =
A B
0 'bla' NaN
1 'bla bla' NaN
এই সন্নিবেশগুলি নিখুঁতভাবে কাজ করে: df.loc[1,'B'] = abc
বা df4.loc[1,'B'] = abc
।
0.15.0
df.loc[1,'b'] = ['foo','bar']