创建lis时跳过pandas数据框中的第一行

2024-05-23 17:36:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我当前正在从csv文件中的特定列创建数据帧。然后,我将根据数据帧中的值创建一个列表,但我希望跳过数据帧中的第一个元素,而不将其包含在列表中。我该怎么做呢?

下面是我正在使用的正在运行的代码:

df = pd.read_csv(filename, header = None, error_bad_lines = False, usecols = [9], names =
['addresses'])
addresses = df['addresses'].tolist()
addresses = [x for x in addresses if str(x) != 'nan']

Tags: 文件csv数据代码none元素df列表
1条回答
网友
1楼 · 发布于 2024-05-23 17:36:20

我认为您可以使用indexing[1:]-首先选择除以下值之外的所有值:

addresses = [x for x in addresses[1:] if str(x) != 'nan']

或:

addresses = df.loc[1:, 'addresses'].tolist()

样品:

df = pd.DataFrame({'addresses':[4,8,7]})
print (df)
   addresses
0          4
1          8
2          7

addresses = df.loc[1:, 'addresses'].tolist()
print (addresses)
[8, 7]

另一个解决方案,谢谢Nickil Maveli

import pandas as pd
import io

temp=u"""10
20
30
"""
#after testing replace io.StringIO(temp) to filename
df = pd.read_csv(io.StringIO(temp), header=None, skiprows=[0], names=['addresses'])
print (df)
   addresses
0         20
1         30 

相关问题 更多 >