Cours
Dans cet article, j'ai compilé les questions les plus fréquemment posées lors d'entretiens concernant Pandas, ainsi que leurs réponses. Certaines questions proviennent de ma propre expérience d'entretien chez Target pour un poste de data scientist. Commençons.
Questions d'entretien de base sur Pandas
Examinons quelques questions d'entretien de base sur les pandas. Les examinateurs bienveillants peuvent commencer par ces questions simples afin de vous mettre à l'aise au début, tandis que d'autres peuvent les poser pour évaluer votre connaissance de base de la bibliothèque.
1. Qu'est-ce que pandas en Python ?
pandas est une bibliothèque Python open source dotée de méthodes intégrées puissantes permettant de nettoyer, d'analyser et de manipuler efficacement des ensembles de données. Développé par Wes McKinney en 2008, ce puissant package s'intègre facilement à divers autres modules de science des données en Python.
Bien qu'initialement développé sur la base d'NumPy, l'pandas moderne (v2.0+) prend également en charge le backend PyArrow. Cela permet des opérations nettement plus rapides, des types de données chaîne authentiques et une meilleure gestion des valeurs manquantes (types nullables) par rapport à l'architecture héritée utilisant uniquement des objets de type « NumPy ».
2. Comment accéder rapidement aux 5 premières lignes et aux 5 dernières lignes d'un DataFrame pandas ?
La méthode ` head() ` dans ` pandas ` est utilisée pour accéder aux 5 premières lignes d'un DataFrame, et la méthode ` tail() ` est utilisée pour accéder aux 5 dernières lignes.
-
Pour accéder aux 5 premières lignes :
dataframe_name.head() -
Pour accéder aux 5 dernières lignes :
dataframe_name.tail()
3. Pourquoi DataFrame.shape ne comporte-t-il pas de parenthèses ?
Dans l'pandas, shape est un attribut et non une méthode. Par conséquent, il est recommandé d'y accéder sans parenthèses.
DataFrame.shape Renvoie un tuple contenant le nombre de lignes et de colonnes dans un DataFrame.
4. Quelle est la différence entre une série et un DataFrame ?
-
DataFrame: Le DataFrame d'
pandassera présenté sous forme de tableau comportant plusieurs lignes et colonnes, chaque colonne pouvant contenir différents types de données. -
Série : La série est un tableau étiqueté unidimensionnel pouvant stocker n'importe quel type de données, mais toutes ses valeurs doivent être du même type. La structure de données Series s'apparente davantage à une colonne unique d'un DataFrame.
La structure de données Series utilise moins de mémoire qu'un DataFrame. Par conséquent, certaines tâches de manipulation de données sont plus rapides sur ce système.
Cependant, un DataFrame peut stocker des ensembles de données volumineux et complexes, tandis qu'une série ne peut traiter que des données homogènes. Par conséquent, l'ensemble des opérations que vous pouvez effectuer sur un DataFrame est considérablement plus vaste que sur une structure de données Series.
5. Qu'est-ce qu'un index dans pandas ?
L'index est une série d'étiquettes qui permettent d'identifier de manière unique chaque ligne d'un DataFrame. L'index peut être de n'importe quel type de données (tel qu'un entier, une chaîne, un hachage, etc.).
df.index Affiche les indices de ligne actuels du DataFrame. df.
Questions d'entretien intermédiaires sur Pandas
Ces questions seront un peu plus complexes, et vous êtes plus susceptible de les rencontrer dans des postes exigeant une expérience préalable de l'utilisation de pandas.
6. Qu'est-ce que l'indexation multiple dans pandas ?
L'index dans pandas identifie de manière unique chaque ligne d'un DataFrame. Nous sélectionnons généralement la colonne qui permet d'identifier de manière unique chaque ligne d'un DataFrame et la définissons comme index. Cependant, que faire si vous ne disposez d'aucune colonne permettant d'effectuer cette opération ?
Par exemple, vous avez les colonnes « nom », « âge », « adresse » et « notes » dans un DataFrame. Il est possible qu'aucune des colonnes ci-dessus ne contienne des valeurs uniques pour toutes les lignes et qu'elles ne soient donc pas adaptées comme index.
Cependant, les colonnes « nom » et « adresse » peuvent, ensemble, identifier de manière unique chaque ligne du DataFrame. Vous pouvez donc définir les deux colonnes comme index. Votre DataFrame dispose désormais d'un index multiple ou hiérarchique.
7. Veuillez expliquer le réindexage dans Pandas. Veuillez fournir un exemple.
La réindexation est utilisée pour adapter un DataFrame à un nouvel index. Elle est généralement utilisée pour combler les lacunes dans les données chronologiques ou pour garantir qu'un rapport inclut toutes les catégories, y compris celles dont les valeurs sont nulles.
Si le nouvel index contient des étiquettes qui ne sont pas présentes dans le DataFrame d'origine, l'pandas e introduit des valeurs manquantes ( NaN ) (ou une valeur de remplissage spécifiée) pour ces lignes.
Exemple : Veuillez imaginer que vous disposez des données de vente pour les trimestres 1 et 3, mais que les trimestres 2 et 4 sont manquants en raison d'un chiffre d'affaires nul. Un graphique standard pourrait être trompeur. reindex() corrige ce problème en intégrant les trimestres manquants dans le DataFrame.
import pandas as pd
# Original data (Note: Q2 and Q4 are missing)
data = {'Quarter': ['Q1', 'Q3'], 'Sales': [15000, 18000]}
df = pd.read_json(pd.DataFrame(data).to_json()) # Simulating loaded data
df = df.set_index('Quarter')
# The complete index we REQUIRE for the report
all_quarters = ['Q1', 'Q2', 'Q3', 'Q4']
# Reindex forces Q2 and Q4 to appear, filling them with 0 instead of NaN
df_full = df.reindex(all_quarters, fill_value=0)
8. Quelle est la différence entre loc et iloc ?
Les méthodes ` .loc() ` et ` .iloc() ` de pandas sont utilisées pour sélectionner des sous-ensembles d'un DataFrame. Dans la pratique, ces fonctions sont largement utilisées pour filtrer un DataFrame en fonction de certaines conditions.
Nous devrions utiliser la méthode .loc() pour sélectionner les données à l'aide des étiquettes réelles des lignes et des colonnes, tandis que la méthode .iloc() est utilisée pour extraire les données en fonction des indices entiers des lignes et des colonnes.
9. Veuillez présenter deux méthodes distinctes pour créer un DataFrame pandas.
D'après un dictionnaire :
import pandas as pd
data = {'Name': ['John', 'Cataline', 'Matt'],
'Age': [50, 45, 30],
'City': ['Austin', 'San Francisco', 'Boston'],
'Marks' : [70, 80, 95]}
df = pd.DataFrame(data)
À partir d'une liste de listes :
import pandas as pd
data = [['John', 25, 'Austin',70],
['Cataline', 30, 'San Francisco',80],
['Matt', 35, 'Boston',90]]
columns = ['Name', 'Age', 'City', 'Marks']
df = pd.DataFrame(data, columns=columns)
10. Comment peut-on obtenir le nombre de valeurs uniques d'une colonne catégorielle dans un DataFrame ?
La fonction Series.value_counts() renvoie le nombre de valeurs uniques dans une série ou une colonne.
Exemple :
Nous avons créé un DataFrame df contenant une colonne catégorielle nommée « Sex » et avons exécuté la fonction « .value_counts() » afin de déterminer le nombre de valeurs uniques dans cette colonne.
import pandas as pd
data = [['John', 50, 'Male', 'Austin', 70],
['Cataline', 45 ,'Female', 'San Francisco', 80],
['Matt', 30 ,'Male','Boston', 95]]
# Column labels of the DataFrame
columns = ['Name','Age','Sex', 'City', 'Marks']
# Create a DataFrame df
df = pd.DataFrame(data, columns=columns)
df['Sex'].value_counts()
Si vous souhaitez afficher la répartition en pourcentage plutôt que les chiffres bruts, veuillez utiliser « normalize=True » comme argument dans « .value_counts() ».
11. Qu'est-ce que le type de données de catégorie et pourquoi l'utiliser ?
Le type de données « category » est utilisé pour les colonnes comportant un nombre limité de valeurs de chaîne uniques (cardinalité faible). Cela permet d'économiser une quantité considérable de mémoire et d'accélérer les opérations telles que le tri et le regroupement, car Pandas stocke les chaînes une seule fois dans une table de recherche et utilise des entiers légers pour la colonne de données réelle.
Questions d'entretien sur Pandas pour les praticiens expérimentés
Les personnes qui possèdent déjà une solide expérience dans le domaine de l'pandas e et qui postulent à des postes plus élevés peuvent être confrontées à certaines de ces questions :
12. Comment optimisez-vous les performances avec de grands ensembles de données dans pandas ?
-
Veuillez utiliser PyArrow : Veuillez télécharger les données à l'adresse
engine="pyarrow"etdtype_backend="pyarrow". Cette méthode est plus rapide et beaucoup plus économe en mémoire que les types d'NumPys standard. -
Vectorisation au lieu de boucles : Les boucles et les itérations sont coûteuses, en particulier lorsque l'on travaille avec des ensembles de données volumineux. Il est préférable d'opter pour des opérations vectorisées, car elles s'appliquent à une colonne entière en une seule fois, ce qui les rend plus rapides que les itérations ligne par ligne.
-
Veuillez ne charger que ce dont vous avez besoin : Veuillez utiliser le paramètre
usecolsdansread_csv()ouread_parquet()afin de limiter la quantité de données chargées. -
Types efficaces en termes de mémoire : Les types de données par défaut dans
pandasne sont pas optimisés pour la mémoire. Par exemple, les valeurs entières utilisent par défaut le type de données `int64`, mais si vos valeurs peuvent être représentées dans `int32`, ajuster le type de données à `int32` peut optimiser l'utilisation de la mémoire. Il est également judicieux de convertir les chaînes de caractères à faible cardinalité en type `category`. -
Utiliser l'agrégation des données : Nous vous recommandons d'agréger les données et d'effectuer des opérations statistiques, car les opérations sur des données agrégées sont plus efficaces que celles sur l'ensemble des données.
-
Traitement en parallèle :
pandas, en version native, est monothread. Pour le parallélisme sur une seule machine, la solution recommandée consiste à utiliserPolars(qui est multithread par défaut) ou des bibliothèques telles queModinqui agissent comme un remplacement parallèle direct pourpandas.
13. Quelle est la différence entre les méthodes .join() et .merge() dans pandas ?
-
Veuillez vous joindre à nous : Joins deux DataFrames en fonction de leur index. Cependant, il existe un argument facultatif,
on, qui permet de spécifier si vous souhaitez effectuer une jointure explicitement sur la base de colonnes. Par défaut, cette fonction effectue une jointure gauche. La syntaxe est la suivante :df1.join(df2). -
Fusionner : La fonction `
merge()` est plus polyvalente, car elle vous permet de spécifier les colonnes sur lesquelles vous souhaitez joindre les DataFrame. Il applique par défaut une jointure interne, mais peut être personnalisé pour utiliser différents types de jointures telles que gauche, droite, externe, interne et croisée. La syntaxe est la suivante :pd.merge(df1, df2, on=”column_names”).
14. Qu'est-ce que Timedelta ?
Timedelta représente la durée, c'est-à-dire la différence entre deux dates ou deux heures, mesurée en jours, heures, minutes et secondes.
15. La méthode .append() a été supprimée. Comment procédez-vous actuellement pour combiner les DataFrames ?
Si vous essayez d'utiliser .append() dans un environnement Pandas moderne (version 2.0 ou ultérieure), une erreur se produira car la méthode a été supprimée afin d'encourager des pratiques de codage plus efficaces.
Il est préférable de rassembler tous vos DataFrame ou lignes dans une liste, puis d'appeler une seule fois la fonction « pd.concat() » :
new_df = pd.concat([df1, df2], ignore_index=True)
16. Quand est-il préférable d'utiliser Polars plutôt que pandas ?
Il est recommandé d'envisager l'utilisation de Polars (une bibliothèque DataFrame basée sur Rust) dans les cas suivants :
-
L'ensemble de données est considérablement plus volumineux que la mémoire RAM disponible :
Polarsdispose d'une évaluation/diffusion différée. -
Vous avez besoin de performances multithread : les opérations d'
pandass sont en grande partie monothread. -
Chaque milliseconde compte : Vous êtes en train de développer un pipeline de données hautement performant.
Questions d'entretien sur le codage Pandas
Les compétences pratiques sont tout aussi importantes que les connaissances théoriques lorsqu'il s'agit de réussir un entretien technique. Voici donc quelques questions d'entretien Pandas relatives au codage que vous devez connaître avant de rencontrer votre interlocuteur.
17. Comment convertir des fichiers Excel en CSV à l'aide de pandas ?
Tout d'abord, nous devons utiliser la fonction .read_excel() pour extraire les données Excel dans une variable. Ensuite, veuillez utiliser la fonction .to_csv() pour une conversion fluide.
Voici un exemple de code :
import pandas as pd
#input your excel file path into the read_excel() function.
excel_data = pd.read_excel("/content/sample_data/california_housing_test.xlsx")
excel_data.to_csv("CSV_data.csv", index = None, header=True)
Remarque : Dans une interview récente, il a été mentionné que la conservation des types de données au format Parquet (avec .to_parquet() au lieu de .to_csv()) est souvent préférable lorsqu'il s'agit de traiter de grands ensembles de données.
18. Comment trier un DataFrame en fonction des colonnes ?
Nous utilisons la méthode ` .sort_values() ` pour trier le DataFrame en fonction d'une seule colonne ou de plusieurs colonnes.
La syntaxe se présente comme suit :df.sort_values(by=[“column_names”]), comme l'illustre l'exemple suivant :
import pandas as pd
data = [['John', 50, 'Male', 'Austin', 70],
['Cataline', 45 ,'Female', 'San Francisco', 80],
['Matt', 30 ,'Male', 'Boston', 95],
['Oliver',35,'Male', 'New york', 65]]
# Column labels of the DataFrame
columns = ['Name','Age','Sex', 'City', 'Marks']
# Create a DataFrame df
df = pd.DataFrame(data, columns=columns)
# Sort values based on ‘Age’ column
df.sort_values(by=['Age'])
df.head()`
19. Veuillez indiquer deux méthodes distinctes pour filtrer les données.
Veuillez observer comment filtrer le DataFrame suivant :
import pandas as pd
data = {'Name': ['John', 'Cataline', 'Matt'],
'Age': [50, 45, 30],
'City': ['Austin', 'San Francisco', 'Boston'],
'Marks' : [70, 80, 95]}
# Create a DataFrame df
df = pd.DataFrame(data)
Méthode 1 : Indexation booléenne
new_df = df[(df.Name == "John") | (df.Marks > 90)]
print (new_df)
Méthode 2 : Utilisation de la méthode « .query() »
df.query('Name == "John" or Marks > 90')
print (new_df)
20. Comment regroupez-vous les données (par exemple, moyenne ou somme) ?
La fonction .groupby() vous permet d'agréger des données en fonction de certaines colonnes et d'effectuer des opérations sur les données regroupées. Veuillez combiner cette approche avec la méthode .agg() pour une plus grande clarté.
Dans le code suivant, les données sont regroupées par colonne Name, et la moyenne Grades de chaque groupe est calculée :
import pandas as pd
# Create a DataFrame
data = {
'Name': ['John', 'Matt', 'John', 'Matt', 'Matt', 'Matt'],
'Grades': [10, 20, 30, 15, 25, 18]
}
# Create a DataFrame df
df = pd.DataFrame(data)
# mean marks of John and Matt
print(df.groupby('Name').agg(
avg_grade=('Grades', 'mean'),
)
21. Comment créer une nouvelle colonne dérivée de colonnes existantes ?
Il existe deux méthodes pour créer de nouvelles colonnes à partir de colonnes existantes :
-
Attribution directe : Attribuer un nouveau nom à une colonne lors de la transformation d'une ou plusieurs colonnes existantes :
df['Total'] = df['Math'] + df['Science'] -
Enchaînement de méthodes : Utilisation d'une fonction lambda avec
.assign():df = df.assign(Total=lambda x: x['Math'] + x['Science'])
Le chaînage de méthodes est aujourd'hui la solution privilégiée, car il améliore la lisibilité du code en éliminant le besoin de variables intermédiaires. Le fait de regrouper l'ensemble de votre transformation de données dans un pipeline logique unique réduit considérablement les erreurs, car vous ne courez plus le risque de référencer accidentellement une version obsolète ou incorrecte de votre DataFrame pendant l'analyse.
Questions d'entretien sur Pandas pour les scientifiques des données
Maintenant que nous avons abordé toutes les questions générales et techniques relatives à l' pandas, examinons les questions d'entretien sur la science des données chez pandas.
22. Comment gérez-vous les valeurs nulles ou manquantes dans pandas ?
Vous pouvez utiliser l'une des trois méthodes suivantes pour traiter les valeurs manquantes dans pandas:
-
dropna(): supprime les lignes ou colonnes manquantes du DataFrame. -
fillna(): remplace les valeurs manquantes par une valeur spécifique à l'aide de cette fonction. -
interpolate(): remplit les valeurs manquantes avec des valeurs d'interpolation calculées.
Grâce au backend PyArrow d' , les entiers peuvent désormais stocker des valeurs d'NA sans conversion en float, ce qui préserve la fidélité des données dans les workflows scientifiques.
23. Différence entre les méthodes fillna() et interpolate()
-
fillna(): Remplit avec une valeur statique (par exemple, 0 ou « Inconnu »). Le remplissage vers l'avant à l'aide de l'argumentmethod='ffill'dans.fillna()est obsolète ; veuillez utiliser directement.ffill()à la place. -
interpolate(): Remplit en utilisant une estimation mathématique (linéaire, polynomiale, spline) entre les points. Indispensable pour les données chronologiques lorsque vous souhaitez établir des liens.
24. Qu'est-ce que le rééchantillonnage ?
Le rééchantillonnage est utilisé pour modifier la fréquence à laquelle les données chronologiques sont rapportées. Supposons que vous disposiez de données chronologiques mensuelles et que vous souhaitiez les convertir en données hebdomadaires ou annuelles ; c'est là qu'intervient le rééchantillonnage.
La conversion de données mensuelles en données hebdomadaires ou quotidiennes correspond essentiellement à un suréchantillonnage. Les techniques d'interpolation sont utilisées ici pour augmenter les fréquences.
En revanche, la conversion des données mensuelles en données annuelles est appelée sous-échantillonnage, où des techniques d'agrégation des données sont appliquées.
25. Comment procéder à un encodage one-hot à l'aide de pandas ?
Nous effectuons un codage one-hot pour convertir les valeurs catégorielles en valeurs numériques, ce qui permet de les intégrer à l'algorithme d'apprentissage automatique.
import pandas as pd
data = {'Name': ['John', 'Cateline', 'Matt', 'Oliver'],
'ID': [1, 22, 23, 36],
'Category': ['A', 'B', 'A', 'B']}
df = pd.DataFrame(data)
#one hot encoding
new_df = pd.get_dummies(df, columns=['Category'])
new_df.head()
Pour la production, l'utilisation de Scikit-learn's OneHotEncoder est l'option privilégiée car elle préserve le schéma.
26. Comment créer un graphique linéaire dans pandas ?
Pour créer un graphique linéaire, nous utilisons la fonction graphique dans pandas.
import pandas as pd
data = {'units': [1, 2, 3, 4, 5],
'price': [7, 12, 8, 13, 16]}
# Create a DataFrame df
df = pd.DataFrame(data)
df.plot(kind='line', x='units', y='price')
Remarque : Vous pouvez désormais modifier le backend en Plotly pour les graphiques interactifs : pd.options.plotting.backend = "plotly".
27. Quelle méthode pandas permet d'obtenir le résumé statistique de toutes les colonnes d'un DataFrame ?
df.describe() Renvoie des statistiques telles que la moyenne, les valeurs centiles, le minimum, le maximum, etc. de chaque colonne du DataFrame.
28. Quelle est la moyenne mobile ?
La moyenne mobile est également appelée moyenne glissante, car l'idée est ici de calculer la moyenne des points de données pour une fenêtre spécifiée et de faire glisser la fenêtre sur l'ensemble des données. Cela permettra de réduire les fluctuations et de mettre en évidence les tendances à long terme dans les données chronologiques.
La syntaxe se présente comme suit : df['column_name'].rolling(window=n).mean()
29. Qu'est-ce que SettingWithCopyWarning et comment peut-on y remédier ?
Cet avertissement est apparu lorsque pandas n'était pas certain si vous modifiez une vue ou une copie. Dans l'pandas e moderne (contexte 3.0+), la technique Copy-on-Write (CoW) est la norme. CoW sépare strictement les vues et les copies, garantissant ainsi que la modification d'un sous-ensemble n'altère jamais silencieusement la trame d'origine, sauf si cela est explicitement demandé. Cela élimine en grande partie l'ambiguïté qui a provoqué l'avertissement.
Pour résoudre ce problème dans les anciennes versions d'pandas, veuillez utiliser .loc[] pour l'indexation explicite ou assigner la tranche à une nouvelle variable avant d'effectuer des modifications afin de garantir la clarté et d'éviter tout comportement imprévu. Pour en savoir plus, veuillez consulter ce blog : Comment résoudre le problème SettingWithCopyWarning.
30. Comment validez-vous les schémas DataFrame en production ?
La norme dans le secteur consiste à utiliser pandera, une bibliothèque qui applique des contrôles rigoureux de la qualité des données lors de l'exécution. pandera vous permet de définir un schéma qui valide les types de données des colonnes et applique une logique statistique, par exemple en s'assurant que les valeurs se situent dans une plage spécifique ou qu'une colonne est unique.
Vous pouvez utiliser ses décorateurs (par exemple, @pa.check_types) pour valider automatiquement les entrées et les sorties de vos fonctions, empêchant ainsi les « données incorrectes » de perturber silencieusement vos pipelines en aval. Cela agit efficacement comme un test unitaire pour vos données elles-mêmes.
Préparation à l'entretien
Il est probable que l'on vous pose au moins quelques-unes des questions les plus fréquemment posées lors d'un entretien, c'est pourquoi il est judicieux de les utiliser pour préparer votre entretien. Outre les pandas, un poste axé sur les données exige de nombreuses autres compétences. Voici la liste de contrôle pour réussir l'ensemble du processus d'entretien :
Comprendre les exigences du poste
Veuillez réviser la description du poste et les responsabilités, et assurez-vous que vos compétences et votre CV correspondent à ces exigences. De plus, il est avantageux de connaître l'entreprise et l'impact de votre rôle sur celle-ci.
Programmation Python
L'intervieweur évalue d'abord vos compétences en Python avant de vous interroger sur sa bibliothèque (pandas). Par conséquent, veuillez acquérir de solides compétences en Python.
Pour les postes d'analyste, le langage Python est le seul nécessaire. Cependant, si vous postulez à des postes de data scientist ou d'ingénieur en apprentissage automatique, il est essentiel de résoudre des défis de codage Python.
Projets de données
Veuillez vous assurer que votre CV mentionne des problèmes concrets liés aux données que vous avez résolus. Pour les personnes expérimentées, vous pouvez évoquer vos projets passés. Si vous êtes novice dans ce domaine, nous vous recommandons de réaliser quelques projets proposés par Kaggle.
Autres concepts
Au-delà de ces questions fondamentales, les questions supplémentaires dépendront du poste.
Pour les analystes, les questions peuvent porter sur Excel, les tableaux de bord de visualisation des données, les statistiques et les probabilités.
De plus, l'intervieweur peut approfondir les sujets liés au machine learning et au deep learning si vous postulez à des postes de data scientist ou d'ingénieur ML.
Si vous postulez à des postes hautement techniques ou expérimentés, attendez-vous à des questions sur la conception de systèmes. Réviser les questions courantes relatives à la conception et s'exercer à résoudre des problèmes de conception de systèmes d'apprentissage automatique de bout en bout.
Conclusion
Pour obtenir un poste dans le secteur des données, il est souvent nécessaire de posséder de solides compétences en Pandas. La liste ci-dessus, qui comprend des questions théoriques et pratiques, devrait vous aider à réussir la partie de votre entretien consacrée à Pandas. De plus, les conseils fournis à la fin vous garantissent que l'ensemble de votre entretien se déroulera sans problème.
Vous pouvez utiliser les ressources suivantes pour vous aider à préparer votre entretien chez Pandas :
- Manipulation de données avec pandas: Cours pour débutants couvrant les bases de Pandas, la manipulation de données et les techniques de visualisation à l'aide d'ensembles de données réels.
- Préparation des données avec pandas: Ce tutoriel fournit des compétences pratiques pour traiter les données manquantes avec pandas, en enseignant des fonctions telles que isnull(), dropna() et fillna().
- Exercices de questions d'entretien sur le codage en Python: Idéal pour la préparation aux entretiens de codage, ce cours couvre les structures de données Python, la manipulation de chaînes de caractères et d'autres domaines clés pour les entretiens en science des données.
- Préparation à un entretien dans le domaine de la science des données: Fournit des conseils complets pour se préparer à différents types d'entretiens et couvre les compétences techniques en Python, R, SQL, etc.
Srujana est rédactrice technique indépendante et titulaire d'un diplôme de quatre ans en informatique. Écrire sur divers sujets, notamment la science des données, l'informatique en nuage, le développement, la programmation, la sécurité et bien d'autres encore, est pour elle une évidence. Elle aime la littérature classique et la découverte de nouvelles destinations.
