2

I don't know how to use pandas in this context. I have my dataset :How can I read specific colums from a txt file in python?.

What I want to do is to take artists and tracks and put them into a "for" to make a Spotify request. I don't know what to put after "for i in". Sorry for my ignorance.

import spotipy
import spotipy.util as util
import pandas as pd

df = pd.read_csv('playlist1.txt', sep='\t', header=None, names=['artists', 'tracks'], usecols=[3, 4])

for i in [????]:
    artist_name = df.artists[i]
    track_name = df.tracks[i]
    q = artist_name + ", " + track_name
    search=spotify.search(q, limit=1, type="track,artist")
       for i in range (0,limit):
          if (search["tracks"]["items"]) <> []:
            array_id.append(search["tracks"]["items"][i]["id"].encode('ascii', 'ignore'))
Jessica Martini
  • 253
  • 2
  • 3
  • 11
  • you could use e.g. `df.iterrows()`. [A similiar question exists here](https://stackoverflow.com/questions/16476924/how-to-iterate-over-rows-in-a-dataframe-in-pandas) – Christian W. Jul 21 '18 at 00:15

1 Answers1

1

Here's a self contained example with a 3 row data set. Please pardon my taste in music.

import pandas as pd
from io import StringIO

data = StringIO("""
artists,tracks
U2,War
Maroon 5,Girls Like You
Ed Sheeran,Perfect
""")

df = pd.read_csv(data)

for index, row in df.iterrows():
    q = row['artists'] + ", " + row['tracks']
    print(q)

which prints:

U2, War
Maroon 5, Girls Like You
Ed Sheeran, Perfect
Randall Goodwin
  • 1,916
  • 2
  • 18
  • 34