如何从数据框中的n行文本中选择几行

时间:2019-04-03 19:11:19

标签: python pandas dataframe

我的DataFrame行中有n行文本,我只希望该DataFrame行中有几行文本。

这是我使用的代码

data.col_name[0]=data.col_name[0][10:100]
data.col_name[1]=data.col_name[1][10:100]
data.col_name[2]=data.col_name[2][10:100]
data.col_name[3]=data.col_name[3][10:100]
data.col_name[4]=data.col_name[4][10:100]

我如何更有效地做到这一点?

3 个答案:

答案 0 :(得分:1)

在这种情况下,您应该使用iloc。只需您可以

data.iloc[10:100, [0, 1, 2, 3, 4]]

如果一次只需要一列:

data.iloc[10:100, 0] 

以此类推。

编辑: 如果要切片特定的列数据,可以使用str.slice。假设我将“消息”列的一行中包含 1000 行数据,然后将前 50 个字符切成薄片。

data['Message'] = data['Message'].str.slice(0,50,1)

OR

df.iloc[:, 2] = df.iloc[:, 2].str.slice(0, 50, 1)

答案 1 :(得分:0)

尝试使用此代码:

for i in range(len(df)):
    df['Column_Name'][i] = df['Column_Name'][i][0:100]

答案 2 :(得分:0)

数据['消息'] =数据['消息'] .str.slice(0,50,1)

这对我来说很好,谢谢@Rarblack