将pandas数据帧行迭代为纯文本

时间:2017-07-24 08:38:16

标签: python loops dataframe text row

我想逐行读取数据框(包含推文)以分析文本。

import csv
import pandas as pd

df = pd.read_csv('tweets2.csv')
df.head()

for row in df.iterrows():
    print (row)

我编写的这段代码不能完成这项工作,因为“行”还包括索引。相反,我想要简单的文本,我将进一步处理。

2 个答案:

答案 0 :(得分:1)

您可以使用df.values

for row in df.values:
    print(row)

示例:

df = pd.DataFrame({'Col1': [1, 2, 3, 4, 5], 'Col2' : ['a', 'b', 'c', 'd', 'e']})

print(df)

   Col1 Col2
0     1    a
1     2    b
2     3    c
3     4    d
4     5    e

for row in df.values:
    print(row)

[1 'a']
[2 'b']
[3 'c']
[4 'd']
[5 'e']

答案 1 :(得分:0)

iterrows yields (index, Series) pairs

所以你可以在for循环中解压缩它们:

for i, row in df.iterrows():
    print(row)

如果您不使用i,则应将其更改为_

使用iterrows,每个row都是Series。如@cᴏʟᴅsᴘᴇᴇᴅ所示,另一种方法是使用values

for row in df.values:
    print(row)

使用此方法,每个row都是numpy数组(因此标记丢失)。