繁体   English   中英

如何根据另一列中的值检索 dataframe 列中的元素并将其存储在列表中

[英]How to retrieve element in dataframe column according to its value in another column ans store it in a list

我有文件,我打开并转换为 dataframe。 我想将第一列的元素检索到两个变量正负以形成两个列表。 我实现了这段代码,但它产生了一个错误。

你能帮帮我吗?

lexicon = open(os.path.join(fileDir, 'Ressources/Augustin_pol.txt'), 'r', encoding='utf-8')
data = pd.read_csv(lexicon, sep=";", header=None)
data.columns = ["terme", "pol", "pos", "degre"]
print(data)
pol_august_pos = data['terme'].where(data['pol'] == 'positive')
pol_august_neg = data['terme'].where(data['pol'] == 'negative')

print(pol_august_pos)

dataframe 看起来像这样:

               terme       pol    pos  degre
0           negative  negative    NOM   haut
1        accablement  negative    NOM   haut
2         affliction  positive    NOM   haut
3     anéantissement  negative    NOM   haut
4      consternation  negative    NOM   haut
...              ...       ...    ...    ...
1343          navrer  positive  VERBE   haut
1344          peiner  negative  VERBE  moyen
1345         pleurer  negative  VERBE   haut
1346       terrasser  positive  VERBE   haut
1347             las  negative    ADJ   haut

上面代码的结果是这样的:



[1348 rows x 4 columns]
0       NaN
1       NaN
2       NaN
3       NaN
4       NaN
       ...
1343    NaN
1344    NaN
1345    NaN
1346    NaN
1347    NaN

我想要一个列表而不是 dataframe

您需要将 pandas dataframe 的切片功能与 .loc 一起使用

data.loc[data.pol =='negative', 'terme']

这是负面的一个例子

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM