在创建列表时跳过熊猫数据框中的第一行
问题描述:
我当前正在从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']
答
我认为你可以使用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
+0
这工作很好。我会尽可能地接受它。 – Harrison
+0
另外,通过提供'skiprows = [0]',您可以在阅读过程中跳过第一行。 –
如果你的问题是NaN的,你可以用'DF = df.dropna()'。 – ayhan